{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(Validation_Strategies)=\n",
    "# Validation strategies\n",
    "\n",
    "\n",
    "The purpose of a fraud detection system is to maximize the detection of fraudulent transactions that will occur in the *future*. \n",
    "\n",
    "The most straightforward approach for training and evaluating a prediction model for a fraud detection system is illustrated in Fig. 1. For clarity of the illustration, the stream of transaction data is discretized in blocks. A block corresponds to a time period (such as one week or one day). We assume that the prediction model should be updated every new block {cite}`dal2017credit,dal2015adaptive`. \n",
    "\n",
    "This is the approach that we used in the section {ref}`Baseline_FDS`. Blocks corresponded to one week of transaction data. One block of data was used for training, and one block of data for testing. A one-week delay was also used to separate the training and test blocks.\n",
    "\n",
    "More generally, given a set of past transactions blocks collected up to the current time $t$, the purpose of the prediction model is to provide predictions for transactions that will occur in the next block (*future* transactions, also called *test* transactions, in yellow) {cite}`dal2017credit,dal2015adaptive`. The set of blocks that are used for training are the *training blocks* (in dark blue). Due to the delay in obtaining transaction labels (See the section {ref}`Fraud_Detection_System`), the most recent transactions usually cannot be used for training (delay period, in light blue) and are removed. Older blocks are also usually discarded, due to concept drift (in light blue, also removed). Let us denote the lengths of the training, delay, and test periods by $\\delta_{train}$, $\\delta_{delay}$, and $\\delta_{test}$, respectively.\n",
    "\n",
    "![alt text](images/stream_train.png)\n",
    "<div align=\"center\">Fig. 1. The purpose of a prediction model for fraud detection is to provide predictions for transactions that occur in the future (in yellow). The model is trained on a set of past transactions (in dark blue).</div>\n",
    "\n",
    "The performance of a model on training data is often a bad indicator of the performance on future data {cite}`bontempi2021statistical,bishop2006pattern,friedman2001elements`. The former is referred to as *training performance*, and the latter as *test performance* (that is, the performance of the model when *tested* on unseen data). In particular, increasing the degree of freedom of a model (such as the depth for a decision tree) always allows to increase the training performance, but usually leads to lower test performances (*overfitting* phenomenon). \n",
    "\n",
    "Validation procedures aim at solving this issue by estimating, on past data, the test performance of a prediction model by setting aside a part of them {cite}`cerqueira2020evaluating,gama2014survey`. They work by splitting the past labeled data into two sets, the *training set* and the *validation set*, that simulate the setting of a real-world fraud detection system. The validation set plays the role of the test set. This is illustrated in Fig. 2. \n",
    "\n",
    "![alt text](images/stream_valid.png)\n",
    "<div align=\"center\">Fig. 2. A validation procedure simulates on past data the training procedure that will be used to provide predictions on test (unseen) data. It uses the validation set to estimate the performance of the test stage. </div>\n",
    "\n",
    "In order to best simulate the setup illustrated in Fig. 1, the training and validation sets are separated with the same delay period. The length of the validation set ($\\delta_{valid}$) is set equal to the length of the test set ($\\delta_{test}$). The performance of a model on the validation set is used as an estimate of the performance that is expected on the test set. \n",
    "\n",
    "The validation strategy illustrated in Fig. 2 is called *hold-out validation* (since part of the available labeled transactions is held out of the training data). Variants of this approach are the *repeated hold-out validation* and the *prequential validation*. The former is the same as the *hold-out* validation except that the procedure is repeated several times using different subsets of the training data. The latter is a variant that repeats hold-out validation by shifting the training and validation sets in the past. Both repeated hold-out and prequential validations allow providing estimates of performances on the test set, together with confidence intervals {cite}`cerqueira2020evaluating,gama2014survey`.\n",
    "\n",
    "The next sections detail these validation procedures. We first illustrate using simulated data and decision trees that the training performance is a bad estimate of the test performance. We then provide implementations of the hold-out, repeated hold-out, and prequential validations, and discuss their pros and cons. \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "tags": [
     "hide-cell"
    ]
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n",
      "                                 Dload  Upload   Total   Spent    Left  Speed\n",
      "100 41751  100 41751    0     0   147k      0 --:--:-- --:--:-- --:--:--  147k\n"
     ]
    }
   ],
   "source": [
    "# Initialization: Load shared functions and simulated data \n",
    "\n",
    "# Load shared functions\n",
    "!curl -O https://raw.githubusercontent.com/Fraud-Detection-Handbook/fraud-detection-handbook/main/Chapter_References/shared_functions.py\n",
    "%run shared_functions.py\n",
    "\n",
    "# Get simulated data from Github repository\n",
    "if not os.path.exists(\"simulated-data-transformed\"):\n",
    "    !git clone https://github.com/Fraud-Detection-Handbook/simulated-data-transformed\n",
    "        "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(Training_Vs_Test_Performances)=\n",
    "## Training performance versus test performance\n",
    "\n",
    "We first illustrate that the training performance is a bad indicator of the test performance. We reuse the same experimental setup as in Chapter 3 - {ref}`Baseline_FDS`. One week of data is used for training the prediction model, and one week of data for testing the predictions. We rely on a decision tree model, and assess the training and test performances for decision trees with different tree depths, ranging from two to fifty. Performances are assessed in terms of ROC AUC, Average Precision, and Card Precision@100 as was motivated in Chapter 4 - {ref}`Performance_Metrics`.\n",
    "\n",
    "Let us first load the simulated data, and set the output feature and input features as in the section {ref}`Baseline_FDS_Decision_Tree`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Load  files\n",
      "CPU times: user 1.04 s, sys: 778 ms, total: 1.82 s\n",
      "Wall time: 2.16 s\n",
      "919767 transactions loaded, containing 8195 fraudulent transactions\n"
     ]
    }
   ],
   "source": [
    "# Note: We load more data than three weeks, as the experiments in the next sections\n",
    "# will require up to three months of data\n",
    "\n",
    "# Load data from the 2018-06-11 to the 2018-09-14\n",
    "\n",
    "DIR_INPUT='simulated-data-transformed/data/' \n",
    "\n",
    "BEGIN_DATE = \"2018-06-11\"\n",
    "END_DATE = \"2018-09-14\"\n",
    "\n",
    "print(\"Load  files\")\n",
    "%time transactions_df=read_from_files(DIR_INPUT, BEGIN_DATE, END_DATE)\n",
    "print(\"{0} transactions loaded, containing {1} fraudulent transactions\".format(len(transactions_df),transactions_df.TX_FRAUD.sum()))\n",
    "\n",
    "output_feature=\"TX_FRAUD\"\n",
    "\n",
    "input_features=['TX_AMOUNT','TX_DURING_WEEKEND', 'TX_DURING_NIGHT', 'CUSTOMER_ID_NB_TX_1DAY_WINDOW',\n",
    "       'CUSTOMER_ID_AVG_AMOUNT_1DAY_WINDOW', 'CUSTOMER_ID_NB_TX_7DAY_WINDOW',\n",
    "       'CUSTOMER_ID_AVG_AMOUNT_7DAY_WINDOW', 'CUSTOMER_ID_NB_TX_30DAY_WINDOW',\n",
    "       'CUSTOMER_ID_AVG_AMOUNT_30DAY_WINDOW', 'TERMINAL_ID_NB_TX_1DAY_WINDOW',\n",
    "       'TERMINAL_ID_RISK_1DAY_WINDOW', 'TERMINAL_ID_NB_TX_7DAY_WINDOW',\n",
    "       'TERMINAL_ID_RISK_7DAY_WINDOW', 'TERMINAL_ID_NB_TX_30DAY_WINDOW',\n",
    "       'TERMINAL_ID_RISK_30DAY_WINDOW']\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Using one week for training, one week for testing, and one week of delay corresponds to the experimental setup that is illustrated in Fig. 3. \n",
    "\n",
    "![alt text](images/stream_train_1block.png)\n",
    "<div align=\"center\">Fig. 3. Experimental setup where one week of data is used for training and one week of data for testing, separated by a one week delay. Each block corresponds to one week of data.</div>\n",
    "\n",
    "Let us set the start of the training period to the 2018-07-25, and the deltas for training, delay, and test to 7 days (one week). "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Set the starting day for the training period, and the deltas\n",
    "start_date_training = datetime.datetime.strptime(\"2018-07-25\", \"%Y-%m-%d\")\n",
    "delta_train=7\n",
    "delta_delay=7\n",
    "delta_test=7\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We define a function `get_performances_train_test_sets` for training a model, and assessing its performances on the training and test sets. The function performs the same steps as those outlined in the section {ref}`Baseline_FDS`. The four main steps are:\n",
    "\n",
    "* Setting the start date for the training period, and the deltas for training, delay and test\n",
    "* Getting the training and test sets\n",
    "* Fitting the model and collecting the predictions\n",
    "* Assessing the performances for both the training and test sets\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "tags": [
     "hide-cell"
    ]
   },
   "outputs": [],
   "source": [
    "def get_performances_train_test_sets(transactions_df, classifier,\n",
    "                                     input_features, output_feature,\n",
    "                                     start_date_training, \n",
    "                                     delta_train=7, delta_delay=7, delta_test=7,\n",
    "                                     top_k_list=[100],\n",
    "                                     type_test=\"Test\", parameter_summary=\"\"):\n",
    "\n",
    "    # Get the training and test sets\n",
    "    (train_df, test_df)=get_train_test_set(transactions_df,start_date_training,\n",
    "                                           delta_train=delta_train,\n",
    "                                           delta_delay=delta_delay,\n",
    "                                           delta_test=delta_test)\n",
    "    \n",
    "    # Fit model\n",
    "    start_time=time.time() \n",
    "    model_and_predictions_dictionary = fit_model_and_get_predictions(classifier, train_df, test_df, \n",
    "                                                                     input_features, output_feature)\n",
    "    execution_time=time.time()-start_time\n",
    "    \n",
    "    # Compute fraud detection performances\n",
    "    test_df['predictions']=model_and_predictions_dictionary['predictions_test']\n",
    "    performances_df_test=performance_assessment(test_df, top_k_list=top_k_list)\n",
    "    performances_df_test.columns=performances_df_test.columns.values+' '+type_test\n",
    "    \n",
    "    train_df['predictions']=model_and_predictions_dictionary['predictions_train']\n",
    "    performances_df_train=performance_assessment(train_df, top_k_list=top_k_list)\n",
    "    performances_df_train.columns=performances_df_train.columns.values+' Train'\n",
    "    \n",
    "    performances_df=pd.concat([performances_df_test,performances_df_train],axis=1)\n",
    "    \n",
    "    performances_df['Execution time']=execution_time\n",
    "    performances_df['Parameters summary']=parameter_summary\n",
    "    \n",
    "    return performances_df\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us for example compute the test and training accuracies using a decision tree with depth 2. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "classifier = sklearn.tree.DecisionTreeClassifier(max_depth=2, random_state=0)\n",
    "\n",
    "performances_df=get_performances_train_test_sets(transactions_df, classifier, \n",
    "                                                 input_features, output_feature,\n",
    "                                                 start_date_training=start_date_training, \n",
    "                                                 delta_train=delta_train, \n",
    "                                                 delta_delay=delta_delay, \n",
    "                                                 delta_test=delta_test,\n",
    "                                                 parameter_summary=2\n",
    "                                                )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Test</th>\n",
       "      <th>Average precision Test</th>\n",
       "      <th>Card Precision@100 Test</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.763</td>\n",
       "      <td>0.496</td>\n",
       "      <td>0.241</td>\n",
       "      <td>0.802</td>\n",
       "      <td>0.586</td>\n",
       "      <td>0.394</td>\n",
       "      <td>0.451595</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   AUC ROC Test  Average precision Test  Card Precision@100 Test  \\\n",
       "0         0.763                   0.496                    0.241   \n",
       "\n",
       "   AUC ROC Train  Average precision Train  Card Precision@100 Train  \\\n",
       "0          0.802                    0.586                     0.394   \n",
       "\n",
       "   Execution time  Parameters summary  \n",
       "0        0.451595                   2  "
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Note that the performances are the same as those obtained in the section {ref}`Baseline_FDS_Performances_Simulation`.\n",
    "\n",
    "We can then compute the performances for varying decision tree depths. Let us vary the decision tree depths from two to fifty, using the following values: $[2,3,4,5,6,7,8,9,10,20,50]$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "list_params = [2,3,4,5,6,7,8,9,10,20,50]\n",
    "\n",
    "performances_df=pd.DataFrame()\n",
    "\n",
    "for max_depth in list_params:\n",
    "    \n",
    "    classifier = sklearn.tree.DecisionTreeClassifier(max_depth = max_depth, random_state=0)\n",
    "\n",
    "    performances_df=performances_df.append(\n",
    "        get_performances_train_test_sets(transactions_df, classifier, \n",
    "                                         input_features, output_feature, \n",
    "                                         start_date_training=start_date_training, \n",
    "                                         delta_train=delta_train, \n",
    "                                         delta_delay=delta_delay, \n",
    "                                         delta_test=delta_test,            \n",
    "                                         parameter_summary=max_depth\n",
    "                           )\n",
    "    )\n",
    "    \n",
    "performances_df.reset_index(inplace=True,drop=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Test</th>\n",
       "      <th>Average precision Test</th>\n",
       "      <th>Card Precision@100 Test</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.763</td>\n",
       "      <td>0.496</td>\n",
       "      <td>0.241</td>\n",
       "      <td>0.802</td>\n",
       "      <td>0.586</td>\n",
       "      <td>0.394</td>\n",
       "      <td>0.468689</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.795</td>\n",
       "      <td>0.562</td>\n",
       "      <td>0.267</td>\n",
       "      <td>0.815</td>\n",
       "      <td>0.615</td>\n",
       "      <td>0.409</td>\n",
       "      <td>0.582330</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.802</td>\n",
       "      <td>0.570</td>\n",
       "      <td>0.269</td>\n",
       "      <td>0.829</td>\n",
       "      <td>0.635</td>\n",
       "      <td>0.411</td>\n",
       "      <td>0.550253</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.814</td>\n",
       "      <td>0.581</td>\n",
       "      <td>0.280</td>\n",
       "      <td>0.835</td>\n",
       "      <td>0.649</td>\n",
       "      <td>0.419</td>\n",
       "      <td>0.580715</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.817</td>\n",
       "      <td>0.588</td>\n",
       "      <td>0.280</td>\n",
       "      <td>0.842</td>\n",
       "      <td>0.662</td>\n",
       "      <td>0.421</td>\n",
       "      <td>0.642127</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.793</td>\n",
       "      <td>0.542</td>\n",
       "      <td>0.254</td>\n",
       "      <td>0.876</td>\n",
       "      <td>0.679</td>\n",
       "      <td>0.427</td>\n",
       "      <td>0.666566</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.786</td>\n",
       "      <td>0.546</td>\n",
       "      <td>0.257</td>\n",
       "      <td>0.884</td>\n",
       "      <td>0.717</td>\n",
       "      <td>0.436</td>\n",
       "      <td>0.727614</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.756</td>\n",
       "      <td>0.499</td>\n",
       "      <td>0.246</td>\n",
       "      <td>0.896</td>\n",
       "      <td>0.737</td>\n",
       "      <td>0.437</td>\n",
       "      <td>0.773424</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.750</td>\n",
       "      <td>0.484</td>\n",
       "      <td>0.244</td>\n",
       "      <td>0.901</td>\n",
       "      <td>0.756</td>\n",
       "      <td>0.440</td>\n",
       "      <td>0.782423</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.739</td>\n",
       "      <td>0.392</td>\n",
       "      <td>0.243</td>\n",
       "      <td>0.974</td>\n",
       "      <td>0.907</td>\n",
       "      <td>0.506</td>\n",
       "      <td>1.194687</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.788</td>\n",
       "      <td>0.309</td>\n",
       "      <td>0.243</td>\n",
       "      <td>1.000</td>\n",
       "      <td>1.000</td>\n",
       "      <td>0.576</td>\n",
       "      <td>1.411543</td>\n",
       "      <td>50</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    AUC ROC Test  Average precision Test  Card Precision@100 Test  \\\n",
       "0          0.763                   0.496                    0.241   \n",
       "1          0.795                   0.562                    0.267   \n",
       "2          0.802                   0.570                    0.269   \n",
       "3          0.814                   0.581                    0.280   \n",
       "4          0.817                   0.588                    0.280   \n",
       "5          0.793                   0.542                    0.254   \n",
       "6          0.786                   0.546                    0.257   \n",
       "7          0.756                   0.499                    0.246   \n",
       "8          0.750                   0.484                    0.244   \n",
       "9          0.739                   0.392                    0.243   \n",
       "10         0.788                   0.309                    0.243   \n",
       "\n",
       "    AUC ROC Train  Average precision Train  Card Precision@100 Train  \\\n",
       "0           0.802                    0.586                     0.394   \n",
       "1           0.815                    0.615                     0.409   \n",
       "2           0.829                    0.635                     0.411   \n",
       "3           0.835                    0.649                     0.419   \n",
       "4           0.842                    0.662                     0.421   \n",
       "5           0.876                    0.679                     0.427   \n",
       "6           0.884                    0.717                     0.436   \n",
       "7           0.896                    0.737                     0.437   \n",
       "8           0.901                    0.756                     0.440   \n",
       "9           0.974                    0.907                     0.506   \n",
       "10          1.000                    1.000                     0.576   \n",
       "\n",
       "    Execution time  Parameters summary  \n",
       "0         0.468689                   2  \n",
       "1         0.582330                   3  \n",
       "2         0.550253                   4  \n",
       "3         0.580715                   5  \n",
       "4         0.642127                   6  \n",
       "5         0.666566                   7  \n",
       "6         0.727614                   8  \n",
       "7         0.773424                   9  \n",
       "8         0.782423                  10  \n",
       "9         1.194687                  20  \n",
       "10        1.411543                  50  "
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For better visualization of the results, let us plot the resulting performances in terms of AUC ROC, AP, and CP@100, as a function of the decision tree depth. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "tags": [
     "hide-cell"
    ]
   },
   "outputs": [],
   "source": [
    "# Get the performance plot for a single performance metric\n",
    "def get_performance_plot(performances_df, \n",
    "                         ax, \n",
    "                         performance_metric, \n",
    "                         expe_type_list=['Test','Train'], \n",
    "                         expe_type_color_list=['#008000','#2F4D7E'],\n",
    "                         parameter_name=\"Tree maximum depth\",\n",
    "                         summary_performances=None):\n",
    "    \n",
    "    # expe_type_list is the list of type of experiments, typically containing 'Test', 'Train', or 'Valid'\n",
    "    # For all types of experiments\n",
    "    for i in range(len(expe_type_list)):\n",
    "    \n",
    "        # Column in performances_df for which to retrieve the data \n",
    "        performance_metric_expe_type=performance_metric+' '+expe_type_list[i]\n",
    "    \n",
    "        # Plot data on graph\n",
    "        ax.plot(performances_df['Parameters summary'], performances_df[performance_metric_expe_type], \n",
    "                color=expe_type_color_list[i], label = expe_type_list[i])\n",
    "        \n",
    "        # If performances_df contains confidence intervals, add them to the graph\n",
    "        if performance_metric_expe_type+' Std' in performances_df.columns:\n",
    "        \n",
    "            conf_min = performances_df[performance_metric_expe_type]\\\n",
    "                        -2*performances_df[performance_metric_expe_type+' Std']\n",
    "            conf_max = performances_df[performance_metric_expe_type]\\\n",
    "                        +2*performances_df[performance_metric_expe_type+' Std']\n",
    "    \n",
    "            ax.fill_between(performances_df['Parameters summary'], conf_min, conf_max, color=expe_type_color_list[i], alpha=.1)\n",
    "\n",
    "    # If summary_performances table is present, adds vertical dashed bar for best estimated parameter \n",
    "    if summary_performances is not None:\n",
    "        best_estimated_parameter=summary_performances[performance_metric][['Best estimated parameters ($k^*$)']].values[0]\n",
    "        best_estimated_performance=float(summary_performances[performance_metric][['Validation performance']].values[0].split(\"+/-\")[0])\n",
    "        ymin, ymax = ax.get_ylim()\n",
    "        ax.vlines(best_estimated_parameter, ymin, best_estimated_performance,\n",
    "                  linestyles=\"dashed\")\n",
    "    \n",
    "    # Set title, and x and y axes labels\n",
    "    ax.set_title(performance_metric+'\\n', fontsize=14)\n",
    "    ax.set(xlabel = parameter_name, ylabel=performance_metric)\n",
    "\n",
    "# Get the performance plots for a set of performance metric\n",
    "def get_performances_plots(performances_df, \n",
    "                           performance_metrics_list=['AUC ROC', 'Average precision', 'Card Precision@100'], \n",
    "                           expe_type_list=['Test','Train'], expe_type_color_list=['#008000','#2F4D7E'],\n",
    "                           parameter_name=\"Tree maximum depth\",\n",
    "                           summary_performances=None):\n",
    "    \n",
    "    # Create as many graphs as there are performance metrics to display\n",
    "    n_performance_metrics = len(performance_metrics_list)\n",
    "    fig, ax = plt.subplots(1, n_performance_metrics, figsize=(5*n_performance_metrics,4))\n",
    "    \n",
    "    # Plot performance metric for each metric in performance_metrics_list\n",
    "    for i in range(n_performance_metrics):\n",
    "    \n",
    "        get_performance_plot(performances_df, ax[i], performance_metric=performance_metrics_list[i], \n",
    "                             expe_type_list=expe_type_list, \n",
    "                             expe_type_color_list=expe_type_color_list,\n",
    "                             parameter_name=parameter_name,\n",
    "                             summary_performances=summary_performances)\n",
    "    \n",
    "    ax[n_performance_metrics-1].legend(loc='upper left', \n",
    "                                       labels=expe_type_list, \n",
    "                                       bbox_to_anchor=(1.05, 1),\n",
    "                                       title=\"Type set\")\n",
    "\n",
    "    plt.subplots_adjust(wspace=0.5, \n",
    "                        hspace=0.8)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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37Zt25Thw4croaGhStu2bZWXXnpJiY+Pv2OGu81TvGjRIqVp06Zl9j9y5IgyYcIEpU2bNkpoaKjy1FNPKXv27Lnt/vebRQhR/e61Hbp8+bISEBCgmzPypoyMDGXKlClKaGioEhYWpkyaNElJS0tTFEVRDh48qPj7+yvFxcW67Y8cOaIMGDBAadGihdKzZ0/lyy+/VJ588knliy++UBRFUVQqlfKvf/1LCQ4OVjp16qQsX75c8ff31811ebfz/dOPP/6odOrUSfnoo4+U4OBgpXfv3sqOHTt066dPn15m3st7OX5MTIwyfPhwpXnz5kqfPn2UrVu33vazbtmyRenXr5/SvHlzpUePHsr333+vKIqiXLx4sczcmllZWcqUKVOUkJAQpVWrVsr06dOV7OzsO/78bpdZCKEoV69eVWbNmqV06dJFadGihfLYY48pK1euVNRqtW6bxYsXK+3atVNCQkKUESNGKD/++KPi7++vXLp06ba/b4qiKKtWrVI6duyotGrVSvnqq6+UsLCw+56n+FaPerujUqmUNm3aKLGxsUp2drby/PPPKy1btlTeeOMN5eDBg0qbNm2Ujh07KsuWLVM0Go2SlJSk5OXllfm8/8xzU2xsrDJ48GClefPmyrBhw5Tjx4+XWb9x40alW7duSnBwsPLKK68oGRkZd/1Zi5rDRFHkxSEhhBDGY/fu3bRv3143OuyxY8cYPXo0R48eve/XLjZu3Minn35a7vFBIYQQD279+vUsXbqUFStW6OaA/ieNRsNHH33Enj172LRpEzY2NtWcUtQkMtCWEEIIo/LFF1+wZ88eXnzxRfLy8vjwww/p0aOHjEMghBAG4sknn+T69esMHz6c8PBwevTogY+PDzY2NmRmZnL06FHWr1+PhYUFq1atkoJYPDTpKRZCCGFUEhISeO+99zh27BiWlpb06NGDt956q8I5SG9HeoqFEKLqJCYm8t///pdDhw5x6dIlioqKcHR0JDAwkP79+zNo0CC5oSkqhRTFQgghhBBCCCGMlow+LYQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQgghhBDCaElRLIQQQggh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TJ06lYSEBDIzM3n99df54Q9/2Og272apEl+z+h47K+ezcjawdj4tVSIiIvdK42v0iIjIXRs9ejR5eXkAX1nXs7Kykh/96EfU1tZit9sJCgryru0pIiIiIr6jPcUiIvdIY+t6pqamkpyczKOPPorD4WDw4MGkpKT4OrKIiIiI39NQLCJyj9jtdlatWnXLfbGxsd4/p6amkpqa2taxRERERKQROnZPRERERERE/JaGYhEREREREfFbGopFRERERETEb9mMMcbXIURERERERER8QXuKRURERERExG9pKBYRERERERG/paFYRERERERE/JaGYhEREREREfFbGopFRERERETEb2koFhEREREREb/l8HWA5vJ4PKxcuZLjx4/jdDrJysqiX79+vo4FwAcffMD69et5+eWXOX36NJmZmdhsNgYOHMiKFSuw29v+s4i6ujp+9atfce7cOWpra/nZz37GgAEDLJENwO12s2zZMkpKSggICGDNmjUYYyyTD6C8vJzp06fzpz/9CYfDYalsP/jBDwgNDQWgb9++zJ8/31L5pHms2nNW7DhQz90L6jlpa+q5plHPtZx6Tm7LtFO5ubkmIyPDGGNMQUGBmT9/vo8T1du6dav5/ve/b2bOnGmMMeanP/2pyc/PN8YYs3z5crN//36f5Nq1a5fJysoyxhhTUVFhJk6caJlsxhhz4MABk5mZaYwxJj8/38yfP99S+Wpra83Pf/5zM3XqVHPy5ElLZauurjbTpk275T4r5ZPms2LPWbXjjFHPtZR6TnxBPdc06rmWUc/J12m3HzUcPXqUhx9+GID4+HiKiop8nKheVFQUGzdu9N4+duwYY8eOBWDChAkcPnzYJ7mSkpJ45plnvLcDAgIskw0gISGB1atXA3D+/HnCw8MtlS8nJ4e0tDQiIiIA6/xcAYqLi/niiy94/PHHmTt3LoWFhZbKJ81nxZ6zaseBeq6l1HPiC+q5plHPtYx6Tr5Oux2KKysrCQkJ8d4OCAjA5XL5MFG9xMREHI4vj0o3xmCz2QAIDg7m+vXrPskVHBxMSEgIlZWVLFiwgIULF1omWwOHw0FGRgarV68mMTHRMvn27NlDWFiY9x9tsM7PFeC+++7jiSee4IUXXuC5555j8eLFlsonzWfFnrNqxzW8vnquedRz4ivquaZRzzWfek4a026H4pCQEG7cuOG97fF4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\n",
      "text/plain": [
       "<Figure size 1080x288 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "get_performances_plots(performances_df, \n",
    "                       performance_metrics_list=['AUC ROC', 'Average precision', 'Card Precision@100'], \n",
    "                       expe_type_list=['Test','Train'],expe_type_color_list=['#008000','#2F4D7E'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The training performance is plotted in blue, and the test performance in green. The graph clearly illustrates the *overfitting* phenomenon: The training performance keeps increasing with the tree depth and reaches a perfect fit, i.e. the highest possible AUC ROC/AP, for a depth of fifty. The test performance however peaks at a depth of 6. A depth of 6 is therefore the depth that maximizes the performance on the test set when a decision tree is used as a prediction model. \n",
    "\n",
    "Let us also recall that the Card Precision@100 is the metric that is of highest interest for fraud investigators. It is worth noting that the AUC ROC on the test set has a different dynamic than the CP@100: For the highest tree depth of fifty, the accuracy in terms of AUC ROC increases, whereas the CP@100 remains low. This illustrates experimentally that the AUC ROC is not a well-suited metric for fraud investigators."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(Hold_Out_Validation)=\n",
    "## Hold-out validation\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As illustrated above, the training performance does not provide guidance on how to select the prediction model that performs best on test data. Let us also recall that the test data cannot be used to estimate the prediction model at the time of training, since it has not been collecting yet. \n",
    "\n",
    "A simple way to anticipate the performance of the model at the test stage is by simulating the setup as above, but shifted in the past, using only the historical data available at the time of training. The most recent block with labeled data is used as a *validation set*. The training set consists of the blocks of transactions that precedes the validation set, with a delay block in between. The validation setup is illustrated in Fig. 4.    \n",
    "\n",
    "\n",
    "![alt text](images/stream_valid_1block.png)\n",
    "<div align=\"center\">Fig. 4. Hold-out validation: The test performance is estimated using a validation set. The validation set has the same length as the test set.</div>\n",
    "\n",
    "This validation strategy is called *hold-out validation* since part of the historical data is held-out from the training set. \n",
    "\n",
    "Since hold-out validation only shifts the experimental setup, the same code as in the previous section can be reused. The only thing to change is to shift the training starting date in the past.\n",
    "\n",
    "Let us therefore shift the starting date of the training set by two blocks (the deltas of the delay and validation periods), and compute the performance for the validation set using the `get_performances_train_test_sets` function. As an example, we can start with a a decision tree of depth 2."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "classifier = sklearn.tree.DecisionTreeClassifier(max_depth = 2, random_state=0)\n",
    "\n",
    "delta_valid = delta_test\n",
    "\n",
    "start_date_training_with_valid = start_date_training+datetime.timedelta(days=-(delta_delay+delta_valid))\n",
    "\n",
    "performances_df_validation=get_performances_train_test_sets(transactions_df, \n",
    "                                                            classifier, \n",
    "                                                            input_features, output_feature,\n",
    "                                                            start_date_training=start_date_training_with_valid, \n",
    "                                                            delta_train=delta_train, \n",
    "                                                            delta_delay=delta_delay, \n",
    "                                                            delta_test=delta_test,\n",
    "                                                            type_test='Validation', parameter_summary='2')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.775</td>\n",
       "      <td>0.524</td>\n",
       "      <td>0.243</td>\n",
       "      <td>0.791</td>\n",
       "      <td>0.577</td>\n",
       "      <td>0.399</td>\n",
       "      <td>0.459617</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   AUC ROC Validation  Average precision Validation  \\\n",
       "0               0.775                         0.524   \n",
       "\n",
       "   Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                          0.243          0.791                    0.577   \n",
       "\n",
       "   Card Precision@100 Train  Execution time Parameters summary  \n",
       "0                     0.399        0.459617                  2  "
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_validation"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us compare the results with those obtained in the previous section."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Test</th>\n",
       "      <th>Average precision Test</th>\n",
       "      <th>Card Precision@100 Test</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.763</td>\n",
       "      <td>0.496</td>\n",
       "      <td>0.241</td>\n",
       "      <td>0.802</td>\n",
       "      <td>0.586</td>\n",
       "      <td>0.394</td>\n",
       "      <td>0.468689</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   AUC ROC Test  Average precision Test  Card Precision@100 Test  \\\n",
       "0         0.763                   0.496                    0.241   \n",
       "\n",
       "   AUC ROC Train  Average precision Train  Card Precision@100 Train  \\\n",
       "0          0.802                    0.586                     0.394   \n",
       "\n",
       "   Execution time  Parameters summary  \n",
       "0        0.468689                   2  "
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df[:1]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The performances obtained on the validation set are very similar to those obtained on the test set, illustrating the ability of the validation set to provide estimates of the expected performances on the test set.\n",
    "\n",
    "Let us then compute the expected performances for different depths of decision trees (with values $[2,3,4,5,6,7,8,9,10,20,50]$)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "list_params = [2,3,4,5,6,7,8,9,10,20,50]\n",
    "\n",
    "performances_df_validation=pd.DataFrame()\n",
    "\n",
    "for max_depth in list_params:\n",
    "    \n",
    "    classifier = sklearn.tree.DecisionTreeClassifier(max_depth = max_depth, random_state=0)\n",
    "\n",
    "    performances_df_validation=performances_df_validation.append(\n",
    "        get_performances_train_test_sets(transactions_df, \n",
    "                                         classifier,\n",
    "                                         input_features, output_feature,\n",
    "                                         start_date_training=start_date_training_with_valid, \n",
    "                                         delta_train=delta_train, \n",
    "                                         delta_delay=delta_delay, \n",
    "                                         delta_test=delta_test, \n",
    "                                         type_test='Validation', parameter_summary=max_depth\n",
    "                                        )\n",
    "    )\n",
    "    \n",
    "performances_df_validation.reset_index(inplace=True,drop=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "      <th>AUC ROC Test</th>\n",
       "      <th>Average precision Test</th>\n",
       "      <th>Card Precision@100 Test</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.775</td>\n",
       "      <td>0.524</td>\n",
       "      <td>0.243</td>\n",
       "      <td>0.791</td>\n",
       "      <td>0.577</td>\n",
       "      <td>0.399</td>\n",
       "      <td>0.471099</td>\n",
       "      <td>2</td>\n",
       "      <td>0.763</td>\n",
       "      <td>0.496</td>\n",
       "      <td>0.241</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.778</td>\n",
       "      <td>0.538</td>\n",
       "      <td>0.247</td>\n",
       "      <td>0.803</td>\n",
       "      <td>0.604</td>\n",
       "      <td>0.413</td>\n",
       "      <td>0.551226</td>\n",
       "      <td>3</td>\n",
       "      <td>0.795</td>\n",
       "      <td>0.562</td>\n",
       "      <td>0.267</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.784</td>\n",
       "      <td>0.535</td>\n",
       "      <td>0.249</td>\n",
       "      <td>0.815</td>\n",
       "      <td>0.624</td>\n",
       "      <td>0.419</td>\n",
       "      <td>0.565738</td>\n",
       "      <td>4</td>\n",
       "      <td>0.802</td>\n",
       "      <td>0.570</td>\n",
       "      <td>0.269</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.791</td>\n",
       "      <td>0.533</td>\n",
       "      <td>0.257</td>\n",
       "      <td>0.824</td>\n",
       "      <td>0.642</td>\n",
       "      <td>0.430</td>\n",
       "      <td>0.573082</td>\n",
       "      <td>5</td>\n",
       "      <td>0.814</td>\n",
       "      <td>0.581</td>\n",
       "      <td>0.280</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.798</td>\n",
       "      <td>0.532</td>\n",
       "      <td>0.257</td>\n",
       "      <td>0.835</td>\n",
       "      <td>0.659</td>\n",
       "      <td>0.431</td>\n",
       "      <td>0.725964</td>\n",
       "      <td>6</td>\n",
       "      <td>0.817</td>\n",
       "      <td>0.588</td>\n",
       "      <td>0.280</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.804</td>\n",
       "      <td>0.537</td>\n",
       "      <td>0.256</td>\n",
       "      <td>0.848</td>\n",
       "      <td>0.671</td>\n",
       "      <td>0.434</td>\n",
       "      <td>0.782774</td>\n",
       "      <td>7</td>\n",
       "      <td>0.793</td>\n",
       "      <td>0.542</td>\n",
       "      <td>0.254</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.796</td>\n",
       "      <td>0.524</td>\n",
       "      <td>0.253</td>\n",
       "      <td>0.850</td>\n",
       "      <td>0.691</td>\n",
       "      <td>0.437</td>\n",
       "      <td>0.735238</td>\n",
       "      <td>8</td>\n",
       "      <td>0.786</td>\n",
       "      <td>0.546</td>\n",
       "      <td>0.257</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.781</td>\n",
       "      <td>0.473</td>\n",
       "      <td>0.249</td>\n",
       "      <td>0.852</td>\n",
       "      <td>0.699</td>\n",
       "      <td>0.437</td>\n",
       "      <td>0.900177</td>\n",
       "      <td>9</td>\n",
       "      <td>0.756</td>\n",
       "      <td>0.499</td>\n",
       "      <td>0.246</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.802</td>\n",
       "      <td>0.466</td>\n",
       "      <td>0.251</td>\n",
       "      <td>0.879</td>\n",
       "      <td>0.706</td>\n",
       "      <td>0.439</td>\n",
       "      <td>0.823850</td>\n",
       "      <td>10</td>\n",
       "      <td>0.750</td>\n",
       "      <td>0.484</td>\n",
       "      <td>0.244</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.775</td>\n",
       "      <td>0.445</td>\n",
       "      <td>0.259</td>\n",
       "      <td>0.967</td>\n",
       "      <td>0.849</td>\n",
       "      <td>0.481</td>\n",
       "      <td>1.233804</td>\n",
       "      <td>20</td>\n",
       "      <td>0.739</td>\n",
       "      <td>0.392</td>\n",
       "      <td>0.243</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.820</td>\n",
       "      <td>0.324</td>\n",
       "      <td>0.259</td>\n",
       "      <td>1.000</td>\n",
       "      <td>1.000</td>\n",
       "      <td>0.571</td>\n",
       "      <td>1.387409</td>\n",
       "      <td>50</td>\n",
       "      <td>0.788</td>\n",
       "      <td>0.309</td>\n",
       "      <td>0.243</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    AUC ROC Validation  Average precision Validation  \\\n",
       "0                0.775                         0.524   \n",
       "1                0.778                         0.538   \n",
       "2                0.784                         0.535   \n",
       "3                0.791                         0.533   \n",
       "4                0.798                         0.532   \n",
       "5                0.804                         0.537   \n",
       "6                0.796                         0.524   \n",
       "7                0.781                         0.473   \n",
       "8                0.802                         0.466   \n",
       "9                0.775                         0.445   \n",
       "10               0.820                         0.324   \n",
       "\n",
       "    Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                           0.243          0.791                    0.577   \n",
       "1                           0.247          0.803                    0.604   \n",
       "2                           0.249          0.815                    0.624   \n",
       "3                           0.257          0.824                    0.642   \n",
       "4                           0.257          0.835                    0.659   \n",
       "5                           0.256          0.848                    0.671   \n",
       "6                           0.253          0.850                    0.691   \n",
       "7                           0.249          0.852                    0.699   \n",
       "8                           0.251          0.879                    0.706   \n",
       "9                           0.259          0.967                    0.849   \n",
       "10                          0.259          1.000                    1.000   \n",
       "\n",
       "    Card Precision@100 Train  Execution time  Parameters summary  \\\n",
       "0                      0.399        0.471099                   2   \n",
       "1                      0.413        0.551226                   3   \n",
       "2                      0.419        0.565738                   4   \n",
       "3                      0.430        0.573082                   5   \n",
       "4                      0.431        0.725964                   6   \n",
       "5                      0.434        0.782774                   7   \n",
       "6                      0.437        0.735238                   8   \n",
       "7                      0.437        0.900177                   9   \n",
       "8                      0.439        0.823850                  10   \n",
       "9                      0.481        1.233804                  20   \n",
       "10                     0.571        1.387409                  50   \n",
       "\n",
       "    AUC ROC Test  Average precision Test  Card Precision@100 Test  \n",
       "0          0.763                   0.496                    0.241  \n",
       "1          0.795                   0.562                    0.267  \n",
       "2          0.802                   0.570                    0.269  \n",
       "3          0.814                   0.581                    0.280  \n",
       "4          0.817                   0.588                    0.280  \n",
       "5          0.793                   0.542                    0.254  \n",
       "6          0.786                   0.546                    0.257  \n",
       "7          0.756                   0.499                    0.246  \n",
       "8          0.750                   0.484                    0.244  \n",
       "9          0.739                   0.392                    0.243  \n",
       "10         0.788                   0.309                    0.243  "
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_validation"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For better visualization, let us plot the validation and test performances in terms of AUC ROC, AP, and CP@100, as a function of the decision tree depth. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "performances_df_validation['AUC ROC Test']=performances_df['AUC ROC Test']\n",
    "performances_df_validation['Average precision Test']=performances_df['Average precision Test']\n",
    "performances_df_validation['Card Precision@100 Test']=performances_df['Card Precision@100 Test']\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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T09nyJAhdO3atRIjK18ZORkcunGI5+uUXJey1+T1PpTlvYQQFaXKtWgfuXEEN60bAR4lz2quPZI3YVr2E3kt3/lvSvMTbaOPDyYPD2yLGaetTkrCVEyiDZD5yivkNGyI65QpqO6Y6VNYiKLg8uGHuM6YQVbPniSFh0uSLR5aCfqEck+01Wlp1NVU52bmTel6KYQVysnJwf5vQ9ns7OzKbUiJtdh2YRsZORkMeHxAieWk67gQoqJVuRbtI//P3p2HRVmuDxz/zgzMsAw77pm75pIamlYubXIq01wBscBfpp1KTyW4oiKKAuaSZmrmlpIIappppWWaW6ZomqmpJ1M7piICCsMy6/v7AxkhZZ9hBnw+18V1wTvvco/L8N7vcz/3k5JMpzqdkMtKfsagPHIEY506GB9+GLibaGdo78y3lsnQdeiA48mT9z1enpGBsVGj4p9kODhwOyYG3379UC9YQNbkyRV5O8L9GI14TJiAS0IC2aGhZM6aBQqFraMSBKspmKNtLQVLfLXMzX9YdS37Go3dG1vteoIglF9QUBADBgygU6dOuLm5odFoOHbsGCEhIbYOzarWnV1HC88WdK7TucT9zM3QDCLRFgShajxQiXZGXgbnM84zsPnAUvd1TE7OH82+8yT4n6XjAMamTVEeO3bf4+Xp6egfe6zEkgH944+TExSE67Jl5AYGYmjRouxvRrg/rRbPUaNw/uYbst5/H824cea/Q0GwFJPJRFRUFOfOnUOpVDJz5kwaNWpkfn316tVs2rQJ7ztVLdOnT6dx48YlHlNROfoccg251p2jXb8+AI01jkD+El8i0RYE+xIYGMhzzz3HyZMnyc7ORq1WM2rUKHx9rVftYmvn0s9xLOUY056YVurIvTnRNolEWxCEqvFAJdpHU44Cpa+fLb96FYcrV8geOdK8Te2oRiFTFE2069VDnpWFTKNBKjQnCknKLx338io1pqzJk3HasQP3yZNJT0oSSWElyDQavIYPR3XgALenTyen0N+fIJREo9Gwb98+dLq7c/f69+9f7P67du1Cp9ORlJTEiRMniIuLY+nSpebXT58+zezZs2lXaJ327777rsRjKiotL399TauWjt9JtBvcNgFwJUss8SUI9ujEiRP89NNPaDQa3N3dycvL48UXX6yx5ePrz63HUe7I4BaDS91XjGgLglDVHqhE+1zGOQAe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\n",
      "text/plain": [
       "<Figure size 1080x288 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "get_performances_plots(performances_df_validation, \n",
    "                       performance_metrics_list=['AUC ROC', 'Average precision', 'Card Precision@100'], \n",
    "                       expe_type_list=['Test','Validation'],expe_type_color_list=['#008000','#FF0000'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The plots show interesting insights into the ability of the validation set to provide both a good performance estimate for the test set and a way to select the best model. First, it should be noted that the performances obtained on both sets differ in terms of exact values, but tend to follow similar dynamics. Exact matches in terms of performances cannot be expected, since different sets are used for training and testing. \n",
    "\n",
    "The performances obtained on the validation set however provide guidance in selecting the tree depths that can maximize the performance on the test set. This is particularly true for the performance in terms of AP, where the optimal depth is in the range 3 to 8. \n",
    "\n",
    "The AUC ROC and CP@100 however exhibit more discrepancies, and appear less well suited for determining the optimal tree depth. In particular, their value is maximized on the validation set for a decision tree depth of 50, whereas such a tree depth provides low performance on the test set."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Repeated hold-out validation\n",
    "\n",
    "Prediction models, and their performances, are often sensitive to the data used for training. Slightly changing the training set may result in different prediction models and performances. \n",
    "\n",
    "An alternative to the hold-out validation procedures consists in training different prediction models with random samples of the training data. This allows to get different estimates of the validation error, therefore providing confidence intervals on the expected performances, instead of a single estimate. The procedure is referred to as the *repeated hold-out* validation procedure.\n",
    "\n",
    "Repeated hold-out validation can be implemented by slightly amending the `get_performances_train_test_sets` function defined above. The function takes two more parameters:\n",
    "\n",
    "* `n_folds`: The number of random subsets that will be used to train the different prediction models\n",
    "* `sampling_ratio`: The proportion of data that will be randomly sampled each time from the training data.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "tags": [
     "hide-cell"
    ]
   },
   "outputs": [],
   "source": [
    "def repeated_holdout_validation(transactions_df, classifier, \n",
    "                                start_date_training, \n",
    "                                delta_train=7, delta_delay=7, delta_test=7,\n",
    "                                n_folds=4,\n",
    "                                sampling_ratio=0.7,\n",
    "                                top_k_list=[100],\n",
    "                                type_test=\"Test\", parameter_summary=\"\"):\n",
    "\n",
    "    performances_df_folds=pd.DataFrame()\n",
    "    \n",
    "    start_time=time.time() \n",
    "    \n",
    "    for fold in range(n_folds):\n",
    "        \n",
    "        # Get the training and test sets\n",
    "        (train_df, test_df)=get_train_test_set(transactions_df,\n",
    "                                               start_date_training,\n",
    "                                               delta_train=delta_train,delta_delay=delta_delay,delta_test=delta_test,\n",
    "                                               sampling_ratio=sampling_ratio,\n",
    "                                               random_state=fold)\n",
    "    \n",
    "        \n",
    "        # Fit model  \n",
    "        model_and_predictions_dictionary = fit_model_and_get_predictions(classifier, train_df, test_df, \n",
    "                                                                         input_features, output_feature)\n",
    "        \n",
    "        # Compute fraud detection performances\n",
    "        test_df['predictions']=model_and_predictions_dictionary['predictions_test']\n",
    "        performances_df_test=performance_assessment(test_df, top_k_list=top_k_list)\n",
    "        performances_df_test.columns=performances_df_test.columns.values+' '+type_test\n",
    "        \n",
    "        train_df['predictions']=model_and_predictions_dictionary['predictions_train']\n",
    "        performances_df_train=performance_assessment(train_df, top_k_list=top_k_list)\n",
    "        performances_df_train.columns=performances_df_train.columns.values+' Train'\n",
    "    \n",
    "        performances_df_folds=performances_df_folds.append(pd.concat([performances_df_test,performances_df_train],axis=1))\n",
    "    \n",
    "    execution_time=time.time()-start_time\n",
    "    \n",
    "    performances_df_folds_mean=performances_df_folds.mean()\n",
    "    performances_df_folds_std=performances_df_folds.std(ddof=0)\n",
    "    \n",
    "    performances_df_folds_mean=pd.DataFrame(performances_df_folds_mean).transpose()\n",
    "    performances_df_folds_std=pd.DataFrame(performances_df_folds_std).transpose()\n",
    "    performances_df_folds_std.columns=performances_df_folds_std.columns.values+\" Std\"\n",
    "    performances_df=pd.concat([performances_df_folds_mean,performances_df_folds_std],axis=1)\n",
    "    \n",
    "    performances_df['Execution time']=execution_time\n",
    "    \n",
    "    performances_df['Parameters summary']=parameter_summary\n",
    "    \n",
    "    return performances_df, performances_df_folds\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us for example compute the validation accuracy with a decision tree of depth 2."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "classifier = sklearn.tree.DecisionTreeClassifier(max_depth = 2, random_state=0)\n",
    "\n",
    "performances_df_repeated_holdout_summary, \\\n",
    "performances_df_repeated_holdout_folds=repeated_holdout_validation(\n",
    "    transactions_df, classifier, \n",
    "    start_date_training=start_date_training_with_valid, \n",
    "    delta_train=delta_train, \n",
    "    delta_delay=delta_delay, \n",
    "    delta_test=delta_test, \n",
    "    n_folds=4,\n",
    "    sampling_ratio=0.7,\n",
    "    type_test=\"Validation\", parameter_summary='2'\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The `repeated_holdout_validation` function returns two DataFrames:\n",
    "\n",
    "* `performances_df_repeated_holdout_summary`: Summary of performance metrics over all folds, in terms of mean and standard variance for each performance metric.\n",
    "* `accuracy_df_repeated_holdout_folds`: Performance metrics obtained in each fold"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>AUC ROC Validation Std</th>\n",
       "      <th>Average precision Validation Std</th>\n",
       "      <th>Card Precision@100 Validation Std</th>\n",
       "      <th>AUC ROC Train Std</th>\n",
       "      <th>Average precision Train Std</th>\n",
       "      <th>Card Precision@100 Train Std</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.776</td>\n",
       "      <td>0.51875</td>\n",
       "      <td>0.24475</td>\n",
       "      <td>0.79475</td>\n",
       "      <td>0.57575</td>\n",
       "      <td>0.2985</td>\n",
       "      <td>0.001225</td>\n",
       "      <td>0.006495</td>\n",
       "      <td>0.001785</td>\n",
       "      <td>0.003961</td>\n",
       "      <td>0.008871</td>\n",
       "      <td>0.009341</td>\n",
       "      <td>3.287545</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   AUC ROC Validation  Average precision Validation  \\\n",
       "0               0.776                       0.51875   \n",
       "\n",
       "   Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                        0.24475        0.79475                  0.57575   \n",
       "\n",
       "   Card Precision@100 Train  AUC ROC Validation Std  \\\n",
       "0                    0.2985                0.001225   \n",
       "\n",
       "   Average precision Validation Std  Card Precision@100 Validation Std  \\\n",
       "0                          0.006495                           0.001785   \n",
       "\n",
       "   AUC ROC Train Std  Average precision Train Std  \\\n",
       "0           0.003961                     0.008871   \n",
       "\n",
       "   Card Precision@100 Train Std  Execution time Parameters summary  \n",
       "0                      0.009341        3.287545                  2  "
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_repeated_holdout_summary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.778</td>\n",
       "      <td>0.514</td>\n",
       "      <td>0.247</td>\n",
       "      <td>0.797</td>\n",
       "      <td>0.569</td>\n",
       "      <td>0.311</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.776</td>\n",
       "      <td>0.511</td>\n",
       "      <td>0.246</td>\n",
       "      <td>0.798</td>\n",
       "      <td>0.572</td>\n",
       "      <td>0.304</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.775</td>\n",
       "      <td>0.523</td>\n",
       "      <td>0.243</td>\n",
       "      <td>0.788</td>\n",
       "      <td>0.571</td>\n",
       "      <td>0.289</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.775</td>\n",
       "      <td>0.527</td>\n",
       "      <td>0.243</td>\n",
       "      <td>0.796</td>\n",
       "      <td>0.591</td>\n",
       "      <td>0.290</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   AUC ROC Validation  Average precision Validation  \\\n",
       "0               0.778                         0.514   \n",
       "0               0.776                         0.511   \n",
       "0               0.775                         0.523   \n",
       "0               0.775                         0.527   \n",
       "\n",
       "   Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                          0.247          0.797                    0.569   \n",
       "0                          0.246          0.798                    0.572   \n",
       "0                          0.243          0.788                    0.571   \n",
       "0                          0.243          0.796                    0.591   \n",
       "\n",
       "   Card Precision@100 Train  \n",
       "0                     0.311  \n",
       "0                     0.304  \n",
       "0                     0.289  \n",
       "0                     0.290  "
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_repeated_holdout_folds"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us then compute the expected performances for different depths of decision trees (with values $[2,3,4,5,6,7,8,9,10,20,50]$)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Computing performances for a decision tree with max_depth=2\n",
      "Computing performances for a decision tree with max_depth=3\n",
      "Computing performances for a decision tree with max_depth=4\n",
      "Computing performances for a decision tree with max_depth=5\n",
      "Computing performances for a decision tree with max_depth=6\n",
      "Computing performances for a decision tree with max_depth=7\n",
      "Computing performances for a decision tree with max_depth=8\n",
      "Computing performances for a decision tree with max_depth=9\n",
      "Computing performances for a decision tree with max_depth=10\n",
      "Computing performances for a decision tree with max_depth=20\n",
      "Computing performances for a decision tree with max_depth=50\n",
      "Total execution time: 39.19s\n"
     ]
    }
   ],
   "source": [
    "list_params = [2,3,4,5,6,7,8,9,10,20,50]\n",
    "\n",
    "performances_df_repeated_holdout=pd.DataFrame()\n",
    "\n",
    "start_time=time.time()\n",
    "\n",
    "for max_depth in list_params:\n",
    "    \n",
    "    print(\"Computing performances for a decision tree with max_depth=\"+str(max_depth))\n",
    "    \n",
    "    classifier = sklearn.tree.DecisionTreeClassifier(max_depth = max_depth, random_state=0)\n",
    "\n",
    "    performances_df_repeated_holdout=performances_df_repeated_holdout.append(\n",
    "        repeated_holdout_validation(\n",
    "            transactions_df, classifier, \n",
    "            start_date_training=start_date_training_with_valid, \n",
    "            delta_train=delta_train, \n",
    "            delta_delay=delta_delay, \n",
    "            delta_test=delta_test,\n",
    "            n_folds=4,\n",
    "            sampling_ratio=0.7,\n",
    "            type_test=\"Validation\", parameter_summary=max_depth\n",
    "        )[0]\n",
    "    )\n",
    "    \n",
    "performances_df_repeated_holdout.reset_index(inplace=True,drop=True)\n",
    "\n",
    "print(\"Total execution time: \"+str(round(time.time()-start_time,2))+\"s\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>AUC ROC Validation Std</th>\n",
       "      <th>Average precision Validation Std</th>\n",
       "      <th>Card Precision@100 Validation Std</th>\n",
       "      <th>AUC ROC Train Std</th>\n",
       "      <th>Average precision Train Std</th>\n",
       "      <th>Card Precision@100 Train Std</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.77600</td>\n",
       "      <td>0.51875</td>\n",
       "      <td>0.24475</td>\n",
       "      <td>0.79475</td>\n",
       "      <td>0.57575</td>\n",
       "      <td>0.29850</td>\n",
       "      <td>0.001225</td>\n",
       "      <td>0.006495</td>\n",
       "      <td>0.001785</td>\n",
       "      <td>0.003961</td>\n",
       "      <td>0.008871</td>\n",
       "      <td>0.009341</td>\n",
       "      <td>3.002673</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.78200</td>\n",
       "      <td>0.53800</td>\n",
       "      <td>0.24900</td>\n",
       "      <td>0.80650</td>\n",
       "      <td>0.60525</td>\n",
       "      <td>0.30675</td>\n",
       "      <td>0.002449</td>\n",
       "      <td>0.003937</td>\n",
       "      <td>0.001414</td>\n",
       "      <td>0.002958</td>\n",
       "      <td>0.003832</td>\n",
       "      <td>0.007189</td>\n",
       "      <td>2.892724</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.78550</td>\n",
       "      <td>0.54100</td>\n",
       "      <td>0.25125</td>\n",
       "      <td>0.81425</td>\n",
       "      <td>0.62325</td>\n",
       "      <td>0.31075</td>\n",
       "      <td>0.006185</td>\n",
       "      <td>0.007649</td>\n",
       "      <td>0.006180</td>\n",
       "      <td>0.004969</td>\n",
       "      <td>0.006220</td>\n",
       "      <td>0.007790</td>\n",
       "      <td>3.032751</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.78200</td>\n",
       "      <td>0.52900</td>\n",
       "      <td>0.24825</td>\n",
       "      <td>0.82025</td>\n",
       "      <td>0.63625</td>\n",
       "      <td>0.31175</td>\n",
       "      <td>0.008515</td>\n",
       "      <td>0.014036</td>\n",
       "      <td>0.003700</td>\n",
       "      <td>0.007529</td>\n",
       "      <td>0.009575</td>\n",
       "      <td>0.008871</td>\n",
       "      <td>3.156154</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.78350</td>\n",
       "      <td>0.51725</td>\n",
       "      <td>0.25225</td>\n",
       "      <td>0.82875</td>\n",
       "      <td>0.64800</td>\n",
       "      <td>0.31825</td>\n",
       "      <td>0.007018</td>\n",
       "      <td>0.006300</td>\n",
       "      <td>0.005761</td>\n",
       "      <td>0.007395</td>\n",
       "      <td>0.008062</td>\n",
       "      <td>0.006759</td>\n",
       "      <td>3.217496</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.78450</td>\n",
       "      <td>0.51725</td>\n",
       "      <td>0.25175</td>\n",
       "      <td>0.83825</td>\n",
       "      <td>0.66375</td>\n",
       "      <td>0.32250</td>\n",
       "      <td>0.005025</td>\n",
       "      <td>0.015833</td>\n",
       "      <td>0.003491</td>\n",
       "      <td>0.002773</td>\n",
       "      <td>0.010779</td>\n",
       "      <td>0.005500</td>\n",
       "      <td>3.332991</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.78700</td>\n",
       "      <td>0.51150</td>\n",
       "      <td>0.25125</td>\n",
       "      <td>0.84625</td>\n",
       "      <td>0.67950</td>\n",
       "      <td>0.32400</td>\n",
       "      <td>0.009274</td>\n",
       "      <td>0.020267</td>\n",
       "      <td>0.002681</td>\n",
       "      <td>0.002861</td>\n",
       "      <td>0.003905</td>\n",
       "      <td>0.006285</td>\n",
       "      <td>3.418987</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.78400</td>\n",
       "      <td>0.50150</td>\n",
       "      <td>0.24850</td>\n",
       "      <td>0.85625</td>\n",
       "      <td>0.69000</td>\n",
       "      <td>0.32625</td>\n",
       "      <td>0.010700</td>\n",
       "      <td>0.024005</td>\n",
       "      <td>0.003841</td>\n",
       "      <td>0.011584</td>\n",
       "      <td>0.005244</td>\n",
       "      <td>0.005890</td>\n",
       "      <td>3.500675</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.79675</td>\n",
       "      <td>0.49800</td>\n",
       "      <td>0.25075</td>\n",
       "      <td>0.87400</td>\n",
       "      <td>0.70425</td>\n",
       "      <td>0.33000</td>\n",
       "      <td>0.015352</td>\n",
       "      <td>0.024321</td>\n",
       "      <td>0.003112</td>\n",
       "      <td>0.009192</td>\n",
       "      <td>0.007562</td>\n",
       "      <td>0.008832</td>\n",
       "      <td>3.656681</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.80125</td>\n",
       "      <td>0.45425</td>\n",
       "      <td>0.26300</td>\n",
       "      <td>0.97150</td>\n",
       "      <td>0.86500</td>\n",
       "      <td>0.37025</td>\n",
       "      <td>0.014289</td>\n",
       "      <td>0.030938</td>\n",
       "      <td>0.004637</td>\n",
       "      <td>0.008789</td>\n",
       "      <td>0.016837</td>\n",
       "      <td>0.011099</td>\n",
       "      <td>4.784067</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.81550</td>\n",
       "      <td>0.33675</td>\n",
       "      <td>0.26000</td>\n",
       "      <td>1.00000</td>\n",
       "      <td>1.00000</td>\n",
       "      <td>0.42900</td>\n",
       "      <td>0.005408</td>\n",
       "      <td>0.028146</td>\n",
       "      <td>0.002828</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.004062</td>\n",
       "      <td>5.121476</td>\n",
       "      <td>50</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    AUC ROC Validation  Average precision Validation  \\\n",
       "0              0.77600                       0.51875   \n",
       "1              0.78200                       0.53800   \n",
       "2              0.78550                       0.54100   \n",
       "3              0.78200                       0.52900   \n",
       "4              0.78350                       0.51725   \n",
       "5              0.78450                       0.51725   \n",
       "6              0.78700                       0.51150   \n",
       "7              0.78400                       0.50150   \n",
       "8              0.79675                       0.49800   \n",
       "9              0.80125                       0.45425   \n",
       "10             0.81550                       0.33675   \n",
       "\n",
       "    Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                         0.24475        0.79475                  0.57575   \n",
       "1                         0.24900        0.80650                  0.60525   \n",
       "2                         0.25125        0.81425                  0.62325   \n",
       "3                         0.24825        0.82025                  0.63625   \n",
       "4                         0.25225        0.82875                  0.64800   \n",
       "5                         0.25175        0.83825                  0.66375   \n",
       "6                         0.25125        0.84625                  0.67950   \n",
       "7                         0.24850        0.85625                  0.69000   \n",
       "8                         0.25075        0.87400                  0.70425   \n",
       "9                         0.26300        0.97150                  0.86500   \n",
       "10                        0.26000        1.00000                  1.00000   \n",
       "\n",
       "    Card Precision@100 Train  AUC ROC Validation Std  \\\n",
       "0                    0.29850                0.001225   \n",
       "1                    0.30675                0.002449   \n",
       "2                    0.31075                0.006185   \n",
       "3                    0.31175                0.008515   \n",
       "4                    0.31825                0.007018   \n",
       "5                    0.32250                0.005025   \n",
       "6                    0.32400                0.009274   \n",
       "7                    0.32625                0.010700   \n",
       "8                    0.33000                0.015352   \n",
       "9                    0.37025                0.014289   \n",
       "10                   0.42900                0.005408   \n",
       "\n",
       "    Average precision Validation Std  Card Precision@100 Validation Std  \\\n",
       "0                           0.006495                           0.001785   \n",
       "1                           0.003937                           0.001414   \n",
       "2                           0.007649                           0.006180   \n",
       "3                           0.014036                           0.003700   \n",
       "4                           0.006300                           0.005761   \n",
       "5                           0.015833                           0.003491   \n",
       "6                           0.020267                           0.002681   \n",
       "7                           0.024005                           0.003841   \n",
       "8                           0.024321                           0.003112   \n",
       "9                           0.030938                           0.004637   \n",
       "10                          0.028146                           0.002828   \n",
       "\n",
       "    AUC ROC Train Std  Average precision Train Std  \\\n",
       "0            0.003961                     0.008871   \n",
       "1            0.002958                     0.003832   \n",
       "2            0.004969                     0.006220   \n",
       "3            0.007529                     0.009575   \n",
       "4            0.007395                     0.008062   \n",
       "5            0.002773                     0.010779   \n",
       "6            0.002861                     0.003905   \n",
       "7            0.011584                     0.005244   \n",
       "8            0.009192                     0.007562   \n",
       "9            0.008789                     0.016837   \n",
       "10           0.000000                     0.000000   \n",
       "\n",
       "    Card Precision@100 Train Std  Execution time  Parameters summary  \n",
       "0                       0.009341        3.002673                   2  \n",
       "1                       0.007189        2.892724                   3  \n",
       "2                       0.007790        3.032751                   4  \n",
       "3                       0.008871        3.156154                   5  \n",
       "4                       0.006759        3.217496                   6  \n",
       "5                       0.005500        3.332991                   7  \n",
       "6                       0.006285        3.418987                   8  \n",
       "7                       0.005890        3.500675                   9  \n",
       "8                       0.008832        3.656681                  10  \n",
       "9                       0.011099        4.784067                  20  \n",
       "10                      0.004062        5.121476                  50  "
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_repeated_holdout"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For better vizualization, let us plot the validation and test accuracies in terms of AUC ROC, AP, and CP@100 as a function of the decision tree depth. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Test</th>\n",
       "      <th>Average precision Test</th>\n",
       "      <th>Card Precision@100 Test</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.763</td>\n",
       "      <td>0.496</td>\n",
       "      <td>0.241</td>\n",
       "      <td>0.802</td>\n",
       "      <td>0.586</td>\n",
       "      <td>0.394</td>\n",
       "      <td>0.468689</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.795</td>\n",
       "      <td>0.562</td>\n",
       "      <td>0.267</td>\n",
       "      <td>0.815</td>\n",
       "      <td>0.615</td>\n",
       "      <td>0.409</td>\n",
       "      <td>0.582330</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.802</td>\n",
       "      <td>0.570</td>\n",
       "      <td>0.269</td>\n",
       "      <td>0.829</td>\n",
       "      <td>0.635</td>\n",
       "      <td>0.411</td>\n",
       "      <td>0.550253</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.814</td>\n",
       "      <td>0.581</td>\n",
       "      <td>0.280</td>\n",
       "      <td>0.835</td>\n",
       "      <td>0.649</td>\n",
       "      <td>0.419</td>\n",
       "      <td>0.580715</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.817</td>\n",
       "      <td>0.588</td>\n",
       "      <td>0.280</td>\n",
       "      <td>0.842</td>\n",
       "      <td>0.662</td>\n",
       "      <td>0.421</td>\n",
       "      <td>0.642127</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.793</td>\n",
       "      <td>0.542</td>\n",
       "      <td>0.254</td>\n",
       "      <td>0.876</td>\n",
       "      <td>0.679</td>\n",
       "      <td>0.427</td>\n",
       "      <td>0.666566</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.786</td>\n",
       "      <td>0.546</td>\n",
       "      <td>0.257</td>\n",
       "      <td>0.884</td>\n",
       "      <td>0.717</td>\n",
       "      <td>0.436</td>\n",
       "      <td>0.727614</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.756</td>\n",
       "      <td>0.499</td>\n",
       "      <td>0.246</td>\n",
       "      <td>0.896</td>\n",
       "      <td>0.737</td>\n",
       "      <td>0.437</td>\n",
       "      <td>0.773424</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.750</td>\n",
       "      <td>0.484</td>\n",
       "      <td>0.244</td>\n",
       "      <td>0.901</td>\n",
       "      <td>0.756</td>\n",
       "      <td>0.440</td>\n",
       "      <td>0.782423</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.739</td>\n",
       "      <td>0.392</td>\n",
       "      <td>0.243</td>\n",
       "      <td>0.974</td>\n",
       "      <td>0.907</td>\n",
       "      <td>0.506</td>\n",
       "      <td>1.194687</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.788</td>\n",
       "      <td>0.309</td>\n",
       "      <td>0.243</td>\n",
       "      <td>1.000</td>\n",
       "      <td>1.000</td>\n",
       "      <td>0.576</td>\n",
       "      <td>1.411543</td>\n",
       "      <td>50</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    AUC ROC Test  Average precision Test  Card Precision@100 Test  \\\n",
       "0          0.763                   0.496                    0.241   \n",
       "1          0.795                   0.562                    0.267   \n",
       "2          0.802                   0.570                    0.269   \n",
       "3          0.814                   0.581                    0.280   \n",
       "4          0.817                   0.588                    0.280   \n",
       "5          0.793                   0.542                    0.254   \n",
       "6          0.786                   0.546                    0.257   \n",
       "7          0.756                   0.499                    0.246   \n",
       "8          0.750                   0.484                    0.244   \n",
       "9          0.739                   0.392                    0.243   \n",
       "10         0.788                   0.309                    0.243   \n",
       "\n",
       "    AUC ROC Train  Average precision Train  Card Precision@100 Train  \\\n",
       "0           0.802                    0.586                     0.394   \n",
       "1           0.815                    0.615                     0.409   \n",
       "2           0.829                    0.635                     0.411   \n",
       "3           0.835                    0.649                     0.419   \n",
       "4           0.842                    0.662                     0.421   \n",
       "5           0.876                    0.679                     0.427   \n",
       "6           0.884                    0.717                     0.436   \n",
       "7           0.896                    0.737                     0.437   \n",
       "8           0.901                    0.756                     0.440   \n",
       "9           0.974                    0.907                     0.506   \n",
       "10          1.000                    1.000                     0.576   \n",
       "\n",
       "    Execution time  Parameters summary  \n",
       "0         0.468689                   2  \n",
       "1         0.582330                   3  \n",
       "2         0.550253                   4  \n",
       "3         0.580715                   5  \n",
       "4         0.642127                   6  \n",
       "5         0.666566                   7  \n",
       "6         0.727614                   8  \n",
       "7         0.773424                   9  \n",
       "8         0.782423                  10  \n",
       "9         1.194687                  20  \n",
       "10        1.411543                  50  "
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "performances_df_repeated_holdout['AUC ROC Test']=performances_df['AUC ROC Test']\n",
    "performances_df_repeated_holdout['Average precision Test']=performances_df['Average precision Test']\n",
    "performances_df_repeated_holdout['Card Precision@100 Test']=performances_df['Card Precision@100 Test']\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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d5d5LEKIilFYOxQbG8uuXbt85ttt2rSJ2NhYAF588UVSUlL4/PPPWbRoEceOHfMZqnnu3DkyMzP5+uuvGTp0KB988AGbN2/m3XffZdOmTQwdOpQZM2Zw7tw5AGbMmMHOnTv58MMPmTNnDh9++CFut9t7veLud6mDBw+yf/9+li9fztNPP82MGTP46aefvPu/+eYbnnjiCT744AOuvfbaIq+fnJzMuHHjaN68OV9//TXPPvssU6dOzTc88uDBg7zxxhtMnjyZTZs2MWjQIJ555hnS09Pzxffkk0/yxx9/sHDhQj755BOOHTvmMxwyKSmJjRs3snjxYl5//XX+9a9/XdbLWCGqq4SEBLKysmjfvn2B+2+44QaCgoJQSvH444/TuHFj1q5dy/Lly/F4PLz55pveYy9tr3Knvs2cOZMlS5Z4OxRKyu12s2PHDtatW0ffvn2926tyu5OcnMx3333H008/TVZWFmPGjKFevXp8+eWXxMTEMHnyZFq1aoXBYGDUqFFs3rzZe92nnnqKv/zlLwU+S54/f54GDRr4bKtbt673d0NiYmKR+4UoraInXIhq4dy5c/z222+89dZbANx666189NFH/PTTT/Tv37/E18nIyKBOnTqXFUNiYiKdO3f2fm+z2WjevDlz5szxbk9LS6Nu3bqFXqN27dqkpKRccSxCiIpXXDvUvHlzvv/+e+677z5OnjzJH3/8wfz580lISOD7779n27ZthIeHAzB79mz69u3L2bNnvdcfP348kZGRAERHR/P666/TqVMnAB599FHmz5/PsWPHCA0NZc2aNSxcuNDb9rz88suMHz8eoNj7NWrUqMDPN3v2bOrVq0d0dDQ7duxgxYoV3HTTTQBcd911DBgwoETX37x5MyEhIbz66qsYjUaaN29OamoqHo/H536nT58GoEmTJjRp0oQJEybQvn17AgICfI47dOgQO3bsYOPGjbRo0QLQRxDcfvvt3l42l8vFiy++SKtWrWjdujW9e/dm3759pfjXFaJ6y00kw8LCijwuOzubu+++m9GjRxMSEgLA0KFDWbRokc9xedurlStXMmbMGG655RZAH5U3ePDgIu/z0Ucf8emnnwJgt9sxGo3ccccdPPzww95jqnK789NPP3HzzTcTFBTE/PnzMRgMTJ8+HYPBQMuWLVm5ciVt2rQBoHnz5j6/C4qSnZ3t7fXPZTabcTgcgP5sWtR+IUpLEu0aYOPGjRiNRu9DX8eOHWnQoAFr1qyhf//+mEwmlFIFnuvxeLwFMCIiIgp8a1kS9erV4/PPP0cpxb59+5gxYwYjRozg9ttv9x5Tu3ZtLly4UOg1EhMTiYiIuOJYhBAVr7h2aNCgQd5Ee9OmTXTu3JlGjRqxZcsWlFLeh9C8jh8/7h3V0qRJE+/2/v37s3XrVmbNmsXRo0e9xRE9Hg9Hjx7F6XT69EzlfQkYHx9f5P0KSrSvvvpq6tWr5/2+Xbt2fPbZZ97v8xYHKu76R44coXXr1j69Mffffz+ATxXiXr160aVLF+666y6io6Pp27cvd999N0FBQT7XPHr0KCEhId6HXdAfTGvXrk18fLy3Tc196AcIDQ0ttsKwEDVJ7s9JWlpakccFBwczevRo1q5dy/79+73tT25ymytvexUfH8+jjz7q/T46Ojrf8PRLjRgxgnHjxgEQEBBAvXr18iWIVbndiY+P59prrwVgw4YNjBgxwmcEo8Vi4brrrgMgMzMz3/0LExgYmC9pdjgcWCyWEu0XorQk0a4BcodnXn/99d5tHo+HH3/8keTkZGrVqlXg/EOlFBkZGdSqVQuA9u3bs3jxYpRSaJrmc+yPP/7I2rVrefPNN/O92QQwGAxERUUB+tBug8HAxIkTadSoEQMHDgSgU6dOLF68GIfDke8XhlKKAwcO0LNnzyuORQhR8Yprh2JjY3n//fdJSUlh06ZNDBs2DNCHRQYHB7NmzZp816xfv763ByTvg+mcOXNYsWIFw4cP58477+TVV1/1DqnMfXGY9+Vi3q+Lu19BLq3G63a7fR4K87ZnxV0/d75jcYKCgvjkk0/YuXMnW7ZsYdOmTXz22Wd8/vnnhIaGFnjvS2PM21t1aVtZ2MtXIWqiyMhIwsPD2bdvHx06dMi3/5lnnuGOO+6gR48e3H333dSuXZv+/ftzxx13cPTo0XzVwC9NpC/9eStsCl2uWrVqeZ+pClOV25309HTvi4KEhARatmzpPSYzM5OTJ0/Stm1bAH7++Wc6duxYovgbNmzI+fPnfbZduHDB27Y3bNgwX4dP3v1ClJbM0a7mjh8/zv79+5k8eTJr1qzx/lm0aBFOp5MNGzbQqlUrjh8/7h2WnevQoUPYbDbvW8PbbruNzMxM1q5d63Ocx+Pho48+IjU1tcSJbWxsLLfccgvTp0/3JvmDBw/G4XCwbNmyfMdv3LiRo0ePeosjlWUsQojyVZJ26JprriE6Opovv/ySQ4cOeV/AXXPNNWRlZeF2u4mKivI+XL7xxhuFFihbvnw5L7/8Ms8//zyxsbFkZ2cD+kNcZGQkAQEBHDhwwHv8/v37vV9fzv1Onjzps2///v20atWqwGOLu35UVBRxcXE+D6OTJ0/mnXfe8bnOrl27WLBgAV27duX555/n22+/pV69evznP//xOa558+ZYrVbi4+O9244cOUJmZqbUshCihIxGI7GxsXz22Wf5ejy3bdvGt99+S0REBDt27ODPP/9k2bJljB8/np49e3LmzJkiX1xde+21PlM1Tpw4QVZWVpnGX9XanfDwcG9CHBIS4pP8fvzxx2iaRsuWLcnIyGD+/PmMGTOmRH8PHTt2ZNeuXd5/D6UUu3bt8k4z6tixIzt37vQef/bsWc6cOePdL0RpSaJdza1fv55atWoxatQooqOjvX9uuukmOnfuzNdff01MTAytWrXi6aef5vfff+fkyZP89NNPPP/88wwePJiGDRsCcNVVV/F///d/TJkyhY8//pjjx4+zb98+nn32WQ4cOFDqdSRfeukl0tPTeffddwG94MT06dOZO3cu77zzDvHx8Zw4cYIlS5bw0ksv8eyzz3ofXss6FiFE+SlJOwR4e7W7d+/uHYrdokULevfuzQsvvMCePXs4dOgQkyZNIikpKV/Rmlzh4eFs2bKFkydPsnPnTm8BHofDQUhICMOGDeONN95g9+7d7N69m9dffx3QK9Bezv2ys7N55ZVXiI+PZ+XKlWzatIn77ruvwGOLu/6QIUOwWq3MnDmTY8eOsX79etavX0/v3r19rmOxWFiwYAHLly/n1KlTbN68mbNnz9KuXTuf45o3b84tt9zCpEmT2Lt3L3v37vVWHs59iSqEKN6TTz6J3W7nwQcfZNu2bSQkJPD111/zzDPPMGzYMLp06UJ4eDjZ2dl8//33nDp1ii+//JLPP/+8yDm+9913H5999hnffvsthw8f5uWXXy6w0OuVqGrtTps2bfj1118BGDhwIAsWLGDz5s3MmTOHjz76iICAAP7zn/8wZswYevXqlS/Owtx2221kZWXx2muvceTIEe+LhkGDBgEwatQo1q9fz8qVK4mLi2PSpEn06dOHZs2alej6QuRTsauJiYp22223qalTpxa4b82aNSo6OlrFxcWp5ORk9eKLL6pevXqptm3bqltuuUW9/fbbym635ztv3bp1asSIESomJkZdf/316tFHH1VxcXGFxlDUOtpz5sxRbdq08Tn/t99+U+PHj1fdu3dXMTEx6v7771ebN28u8PzSxiKEqHglbYfOnDmjWrVq5V3TNFdSUpKaOHGiiomJUV26dFFPPfWUSkxMVEoptW3bNhUdHa2cTqf3+N9++03dcccdqn379qpfv35q0aJF6p577lHvvfeeUkqpzMxM9dxzz6lOnTqpXr16qYULF6ro6GjvWqxF3e9SX331lerVq5f6+9//rjp16qQGDBigNmzY4N0/adIkn3VZS3L93bt3qxEjRqh27dqpW2+9VX3zzTcFfta1a9eq2267TbVr10717dtXffbZZ0oppU6ePOmz9mtKSoqaOHGi6ty5s+ratauaNGmSSk1NLfTvr6CYhRBK/fnnn2rKlCmqT58+qn379ur2229XH330kXI4HN5j5s2bp2644QbVuXNnNXLkSPXVV1+p6Ohodfr06QJ/3pRSasmSJerGG29UXbt2VR9++KHq0qVLqdfRzquqtzuZmZmqe/fuas+ePSo1NVU98sgjqkOHDuqZZ55R27ZtU927d1c33nijev/995Xb7VZHjx5VVqvV5/NeGk+uPXv2qLvuuku1a9dODR8+XO3bt89n/+rVq9XNN9+sOnXqpB5//HGVlJRU5N+1EEXRlJKJWEIIIWqOH374gR49enirAu/du5fRo0eza9euUk85Wb16NXPnzs03dFIIIcTlW7lyJQsWLGDx4sXeNcov5Xa7+fvf/87mzZv5+uuvCQ4OruAohSiaFEMTQghRo7z33nts3ryZCRMmYLVaeeutt+jbt6/UdRBCCD9xzz33kJ6ezogRI4iNjaVv3740a9aM4OBgkpOT2bVrFytXriQgIIAlS5ZIki38kvRoCyGEqFGOHDnCa6+9xt69ezGbzfTt25cXX3yx2DVyCyI92kIIUX7i4+P54osv2L59O6dPn8Zut1O7dm2uu+46Bg0axJAhQ+QlqfBbkmgLIYQQQgghhBBlSKqOCyGEEEIIIYQQZUgSbSGEEEIIIYQQogxJoi2EEEIIIYQQQpQhSbSFEEIIIYQQQogyJIm2EEIIIYQQQghRhiTRFkIIIYQQQgghypAk2kIIIYQQQggh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\n",
      "text/plain": [
       "<Figure size 1080x288 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "get_performances_plots(\n",
    "    performances_df_repeated_holdout, \n",
    "    performance_metrics_list=['AUC ROC', 'Average precision', 'Card Precision@100'], \n",
    "    expe_type_list=['Test','Validation'],expe_type_color_list=['#008000','#FF0000']\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The repeated hold-out validation offers a better view of the expected performances, by providing confidence intervals. Qualitatively, the results are similar to the hold-out validation. The AP provides the most accurate proxy to the expected performance on the test set. The AUC ROC and CP@100 provide poorer estimates of the test performance.\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(Prequential_validation)=\n",
    "## Prequential validation\n",
    "\n",
    "The repeated hold-out validation relies on random subsets of the same training data to build prediction models. A limitation of this approach is that it reduces the expected performances of the models, as only subsets of data are used for training. \n",
    "\n",
    "An alternative validation procedure consists in using training sets of similar sizes, taken from older historical data. The scheme is called *prequential validation*, and is illustrated in Fig. 5. Each fold shifts the training and validation sets by one block in the past. \n",
    "\n",
    "![alt text](images/stream_prequential_1block.png)\n",
    "<div align=\"center\">Fig. 5. Prequential validation: Each fold shifts the training and validation sets by one block in the past. The validation set has the same length as the test.</div>\n",
    "\n",
    "The implementation is similar than the repeated hold-out validation. The only difference is that, for each fold, the starting dates for the training and validation sets are shifted by one block. The implementation is provided below, with the function `prequential_validation`. \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {
    "tags": [
     "hide-cell"
    ]
   },
   "outputs": [],
   "source": [
    "def prequential_validation(transactions_df, classifier, \n",
    "                           start_date_training, \n",
    "                           delta_train=7, \n",
    "                           delta_delay=7, \n",
    "                           delta_assessment=7,\n",
    "                           n_folds=4,\n",
    "                           top_k_list=[100],\n",
    "                           type_test=\"Test\", parameter_summary=\"\"):\n",
    "\n",
    "    performances_df_folds=pd.DataFrame()\n",
    "    \n",
    "    start_time=time.time() \n",
    "    \n",
    "    for fold in range(n_folds):\n",
    "        \n",
    "        start_date_training_fold=start_date_training-datetime.timedelta(days=fold*delta_assessment)\n",
    "        \n",
    "        # Get the training and test sets\n",
    "        (train_df, test_df)=get_train_test_set(transactions_df,\n",
    "                                               start_date_training=start_date_training_fold,\n",
    "                                               delta_train=delta_train,\n",
    "                                               delta_delay=delta_delay,\n",
    "                                               delta_test=delta_assessment)\n",
    "    \n",
    "        # Fit model\n",
    "        model_and_predictions_dictionary = fit_model_and_get_predictions(classifier, train_df, test_df, \n",
    "                                                                     input_features, output_feature)\n",
    "        \n",
    "        # Compute fraud detection performances    \n",
    "        test_df['predictions']=model_and_predictions_dictionary['predictions_test']\n",
    "        performances_df_test=performance_assessment(test_df, top_k_list=top_k_list, rounded=False)\n",
    "        performances_df_test.columns=performances_df_test.columns.values+' '+type_test\n",
    "        \n",
    "        train_df['predictions']=model_and_predictions_dictionary['predictions_train']\n",
    "        performances_df_train=performance_assessment(train_df, top_k_list=top_k_list, rounded=False)\n",
    "        performances_df_train.columns=performances_df_train.columns.values+' Train'\n",
    "    \n",
    "        performances_df_folds=performances_df_folds.append(pd.concat([performances_df_test,performances_df_train],axis=1))\n",
    "    \n",
    "    execution_time=time.time()-start_time\n",
    "    \n",
    "    performances_df_folds_mean=performances_df_folds.mean()\n",
    "    performances_df_folds_std=performances_df_folds.std(ddof=0)\n",
    "    \n",
    "    performances_df_folds_mean=pd.DataFrame(performances_df_folds_mean).transpose()\n",
    "    performances_df_folds_std=pd.DataFrame(performances_df_folds_std).transpose()\n",
    "    performances_df_folds_std.columns=performances_df_folds_std.columns.values+\" Std\"\n",
    "    performances_df=pd.concat([performances_df_folds_mean,performances_df_folds_std],axis=1)\n",
    "    \n",
    "    performances_df['Execution time']=execution_time\n",
    "    \n",
    "    performances_df['Parameters summary']=parameter_summary\n",
    "    \n",
    "    return performances_df, performances_df_folds\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us for example compute the validation performance with a decision tree of depth 2.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "classifier = sklearn.tree.DecisionTreeClassifier(max_depth = 2, random_state=0)\n",
    "\n",
    "performances_df_prequential_summary, performances_df_prequential_folds=prequential_validation(\n",
    "    transactions_df, classifier, \n",
    "    start_date_training=start_date_training_with_valid, \n",
    "    delta_train=delta_train, \n",
    "    delta_delay=delta_delay, \n",
    "    delta_assessment=delta_valid, \n",
    "    n_folds=4,\n",
    "    type_test=\"Validation\", parameter_summary='2'\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As with the function `repeated_holdout_validation`, the `prequential_validation` function returns two DataFrames:\n",
    "\n",
    "* `performances_df_prequential_summary`: Summary of performance metrics over all folds, in terms of mean and standard variance for each performance metric.\n",
    "* `performances_df_prequential_folds`: Performance metrics obtained in each fold"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>AUC ROC Validation Std</th>\n",
       "      <th>Average precision Validation Std</th>\n",
       "      <th>Card Precision@100 Validation Std</th>\n",
       "      <th>AUC ROC Train Std</th>\n",
       "      <th>Average precision Train Std</th>\n",
       "      <th>Card Precision@100 Train Std</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.790786</td>\n",
       "      <td>0.549767</td>\n",
       "      <td>0.256429</td>\n",
       "      <td>0.804231</td>\n",
       "      <td>0.593561</td>\n",
       "      <td>0.4025</td>\n",
       "      <td>0.012035</td>\n",
       "      <td>0.022134</td>\n",
       "      <td>0.014481</td>\n",
       "      <td>0.013359</td>\n",
       "      <td>0.018224</td>\n",
       "      <td>0.040474</td>\n",
       "      <td>3.364997</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   AUC ROC Validation  Average precision Validation  \\\n",
       "0            0.790786                      0.549767   \n",
       "\n",
       "   Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                       0.256429       0.804231                 0.593561   \n",
       "\n",
       "   Card Precision@100 Train  AUC ROC Validation Std  \\\n",
       "0                    0.4025                0.012035   \n",
       "\n",
       "   Average precision Validation Std  Card Precision@100 Validation Std  \\\n",
       "0                          0.022134                           0.014481   \n",
       "\n",
       "   AUC ROC Train Std  Average precision Train Std  \\\n",
       "0           0.013359                     0.018224   \n",
       "\n",
       "   Card Precision@100 Train Std  Execution time Parameters summary  \n",
       "0                      0.040474        3.364997                  2  "
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_prequential_summary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.775012</td>\n",
       "      <td>0.523548</td>\n",
       "      <td>0.242857</td>\n",
       "      <td>0.791004</td>\n",
       "      <td>0.576732</td>\n",
       "      <td>0.398571</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.808739</td>\n",
       "      <td>0.584663</td>\n",
       "      <td>0.242857</td>\n",
       "      <td>0.791234</td>\n",
       "      <td>0.576985</td>\n",
       "      <td>0.347143</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.791405</td>\n",
       "      <td>0.542531</td>\n",
       "      <td>0.262857</td>\n",
       "      <td>0.813726</td>\n",
       "      <td>0.599954</td>\n",
       "      <td>0.402857</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.787988</td>\n",
       "      <td>0.548326</td>\n",
       "      <td>0.277143</td>\n",
       "      <td>0.820960</td>\n",
       "      <td>0.620572</td>\n",
       "      <td>0.461429</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   AUC ROC Validation  Average precision Validation  \\\n",
       "0            0.775012                      0.523548   \n",
       "0            0.808739                      0.584663   \n",
       "0            0.791405                      0.542531   \n",
       "0            0.787988                      0.548326   \n",
       "\n",
       "   Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                       0.242857       0.791004                 0.576732   \n",
       "0                       0.242857       0.791234                 0.576985   \n",
       "0                       0.262857       0.813726                 0.599954   \n",
       "0                       0.277143       0.820960                 0.620572   \n",
       "\n",
       "   Card Precision@100 Train  \n",
       "0                  0.398571  \n",
       "0                  0.347143  \n",
       "0                  0.402857  \n",
       "0                  0.461429  "
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_prequential_folds"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us then compute the expected performances for different depths of decision trees, ranging from $[2,3,4,5,6,7,8,9,10,20,50]$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Computing performances for a decision tree with max_depth=2\n",
      "Computing performances for a decision tree with max_depth=3\n",
      "Computing performances for a decision tree with max_depth=4\n",
      "Computing performances for a decision tree with max_depth=5\n",
      "Computing performances for a decision tree with max_depth=6\n",
      "Computing performances for a decision tree with max_depth=7\n",
      "Computing performances for a decision tree with max_depth=8\n",
      "Computing performances for a decision tree with max_depth=9\n",
      "Computing performances for a decision tree with max_depth=10\n",
      "Computing performances for a decision tree with max_depth=20\n",
      "Computing performances for a decision tree with max_depth=50\n",
      "Total execution time: 52.82s\n"
     ]
    }
   ],
   "source": [
    "list_params = [2,3,4,5,6,7,8,9,10,20,50]\n",
    "\n",
    "start_time=time.time()\n",
    "\n",
    "performances_df_prequential=pd.DataFrame()\n",
    "\n",
    "for max_depth in list_params:\n",
    "    \n",
    "    print(\"Computing performances for a decision tree with max_depth=\"+str(max_depth))\n",
    "    \n",
    "    classifier = sklearn.tree.DecisionTreeClassifier(max_depth = max_depth, random_state=0)\n",
    "\n",
    "    performances_df_prequential=performances_df_prequential.append(\n",
    "        prequential_validation(\n",
    "            transactions_df, classifier,\n",
    "            start_date_training=start_date_training_with_valid, \n",
    "            delta_train=delta_train, \n",
    "            delta_delay=delta_delay, \n",
    "            delta_assessment=delta_test,\n",
    "            n_folds=4,\n",
    "            type_test=\"Validation\", parameter_summary=max_depth\n",
    "        )[0]\n",
    "    )\n",
    "    \n",
    "performances_df_prequential.reset_index(inplace=True,drop=True)\n",
    "\n",
    "print(\"Total execution time: \"+str(round(time.time()-start_time,2))+\"s\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>AUC ROC Validation Std</th>\n",
       "      <th>Average precision Validation Std</th>\n",
       "      <th>Card Precision@100 Validation Std</th>\n",
       "      <th>AUC ROC Train Std</th>\n",
       "      <th>Average precision Train Std</th>\n",
       "      <th>Card Precision@100 Train Std</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.790786</td>\n",
       "      <td>0.549767</td>\n",
       "      <td>0.256429</td>\n",
       "      <td>0.804231</td>\n",
       "      <td>0.593561</td>\n",
       "      <td>0.402500</td>\n",
       "      <td>0.012035</td>\n",
       "      <td>0.022134</td>\n",
       "      <td>0.014481</td>\n",
       "      <td>0.013359</td>\n",
       "      <td>0.018224</td>\n",
       "      <td>0.040474</td>\n",
       "      <td>3.666392</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.802717</td>\n",
       "      <td>0.573414</td>\n",
       "      <td>0.267143</td>\n",
       "      <td>0.818140</td>\n",
       "      <td>0.623562</td>\n",
       "      <td>0.421429</td>\n",
       "      <td>0.017607</td>\n",
       "      <td>0.027186</td>\n",
       "      <td>0.016067</td>\n",
       "      <td>0.011437</td>\n",
       "      <td>0.016412</td>\n",
       "      <td>0.032214</td>\n",
       "      <td>3.414093</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.800690</td>\n",
       "      <td>0.554134</td>\n",
       "      <td>0.264286</td>\n",
       "      <td>0.825978</td>\n",
       "      <td>0.644766</td>\n",
       "      <td>0.426429</td>\n",
       "      <td>0.017878</td>\n",
       "      <td>0.038293</td>\n",
       "      <td>0.014321</td>\n",
       "      <td>0.009928</td>\n",
       "      <td>0.018337</td>\n",
       "      <td>0.034144</td>\n",
       "      <td>3.765976</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.804218</td>\n",
       "      <td>0.546094</td>\n",
       "      <td>0.267857</td>\n",
       "      <td>0.831289</td>\n",
       "      <td>0.657368</td>\n",
       "      <td>0.431429</td>\n",
       "      <td>0.016505</td>\n",
       "      <td>0.042197</td>\n",
       "      <td>0.013869</td>\n",
       "      <td>0.007867</td>\n",
       "      <td>0.016387</td>\n",
       "      <td>0.029881</td>\n",
       "      <td>3.788764</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.798603</td>\n",
       "      <td>0.537006</td>\n",
       "      <td>0.264643</td>\n",
       "      <td>0.839032</td>\n",
       "      <td>0.669597</td>\n",
       "      <td>0.432143</td>\n",
       "      <td>0.024225</td>\n",
       "      <td>0.037056</td>\n",
       "      <td>0.008474</td>\n",
       "      <td>0.002592</td>\n",
       "      <td>0.012448</td>\n",
       "      <td>0.028383</td>\n",
       "      <td>4.170064</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.795636</td>\n",
       "      <td>0.530609</td>\n",
       "      <td>0.262500</td>\n",
       "      <td>0.846446</td>\n",
       "      <td>0.681837</td>\n",
       "      <td>0.436429</td>\n",
       "      <td>0.023144</td>\n",
       "      <td>0.040323</td>\n",
       "      <td>0.006804</td>\n",
       "      <td>0.005559</td>\n",
       "      <td>0.008949</td>\n",
       "      <td>0.026351</td>\n",
       "      <td>4.368153</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.795142</td>\n",
       "      <td>0.516246</td>\n",
       "      <td>0.260714</td>\n",
       "      <td>0.859548</td>\n",
       "      <td>0.694885</td>\n",
       "      <td>0.440000</td>\n",
       "      <td>0.023081</td>\n",
       "      <td>0.033545</td>\n",
       "      <td>0.009715</td>\n",
       "      <td>0.008063</td>\n",
       "      <td>0.009498</td>\n",
       "      <td>0.031380</td>\n",
       "      <td>4.966671</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.785849</td>\n",
       "      <td>0.505189</td>\n",
       "      <td>0.260357</td>\n",
       "      <td>0.864869</td>\n",
       "      <td>0.717259</td>\n",
       "      <td>0.447500</td>\n",
       "      <td>0.026249</td>\n",
       "      <td>0.040393</td>\n",
       "      <td>0.009813</td>\n",
       "      <td>0.011527</td>\n",
       "      <td>0.015346</td>\n",
       "      <td>0.028453</td>\n",
       "      <td>4.757738</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.786784</td>\n",
       "      <td>0.493543</td>\n",
       "      <td>0.257143</td>\n",
       "      <td>0.887622</td>\n",
       "      <td>0.727672</td>\n",
       "      <td>0.448571</td>\n",
       "      <td>0.031165</td>\n",
       "      <td>0.048307</td>\n",
       "      <td>0.009949</td>\n",
       "      <td>0.011532</td>\n",
       "      <td>0.018154</td>\n",
       "      <td>0.028962</td>\n",
       "      <td>5.247802</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.780408</td>\n",
       "      <td>0.450980</td>\n",
       "      <td>0.264286</td>\n",
       "      <td>0.964275</td>\n",
       "      <td>0.862459</td>\n",
       "      <td>0.496786</td>\n",
       "      <td>0.022168</td>\n",
       "      <td>0.031413</td>\n",
       "      <td>0.007890</td>\n",
       "      <td>0.007512</td>\n",
       "      <td>0.014831</td>\n",
       "      <td>0.031483</td>\n",
       "      <td>6.802245</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.822564</td>\n",
       "      <td>0.341818</td>\n",
       "      <td>0.265714</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.578571</td>\n",
       "      <td>0.013407</td>\n",
       "      <td>0.026227</td>\n",
       "      <td>0.008512</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.028732</td>\n",
       "      <td>7.768848</td>\n",
       "      <td>50</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    AUC ROC Validation  Average precision Validation  \\\n",
       "0             0.790786                      0.549767   \n",
       "1             0.802717                      0.573414   \n",
       "2             0.800690                      0.554134   \n",
       "3             0.804218                      0.546094   \n",
       "4             0.798603                      0.537006   \n",
       "5             0.795636                      0.530609   \n",
       "6             0.795142                      0.516246   \n",
       "7             0.785849                      0.505189   \n",
       "8             0.786784                      0.493543   \n",
       "9             0.780408                      0.450980   \n",
       "10            0.822564                      0.341818   \n",
       "\n",
       "    Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                        0.256429       0.804231                 0.593561   \n",
       "1                        0.267143       0.818140                 0.623562   \n",
       "2                        0.264286       0.825978                 0.644766   \n",
       "3                        0.267857       0.831289                 0.657368   \n",
       "4                        0.264643       0.839032                 0.669597   \n",
       "5                        0.262500       0.846446                 0.681837   \n",
       "6                        0.260714       0.859548                 0.694885   \n",
       "7                        0.260357       0.864869                 0.717259   \n",
       "8                        0.257143       0.887622                 0.727672   \n",
       "9                        0.264286       0.964275                 0.862459   \n",
       "10                       0.265714       1.000000                 1.000000   \n",
       "\n",
       "    Card Precision@100 Train  AUC ROC Validation Std  \\\n",
       "0                   0.402500                0.012035   \n",
       "1                   0.421429                0.017607   \n",
       "2                   0.426429                0.017878   \n",
       "3                   0.431429                0.016505   \n",
       "4                   0.432143                0.024225   \n",
       "5                   0.436429                0.023144   \n",
       "6                   0.440000                0.023081   \n",
       "7                   0.447500                0.026249   \n",
       "8                   0.448571                0.031165   \n",
       "9                   0.496786                0.022168   \n",
       "10                  0.578571                0.013407   \n",
       "\n",
       "    Average precision Validation Std  Card Precision@100 Validation Std  \\\n",
       "0                           0.022134                           0.014481   \n",
       "1                           0.027186                           0.016067   \n",
       "2                           0.038293                           0.014321   \n",
       "3                           0.042197                           0.013869   \n",
       "4                           0.037056                           0.008474   \n",
       "5                           0.040323                           0.006804   \n",
       "6                           0.033545                           0.009715   \n",
       "7                           0.040393                           0.009813   \n",
       "8                           0.048307                           0.009949   \n",
       "9                           0.031413                           0.007890   \n",
       "10                          0.026227                           0.008512   \n",
       "\n",
       "    AUC ROC Train Std  Average precision Train Std  \\\n",
       "0            0.013359                     0.018224   \n",
       "1            0.011437                     0.016412   \n",
       "2            0.009928                     0.018337   \n",
       "3            0.007867                     0.016387   \n",
       "4            0.002592                     0.012448   \n",
       "5            0.005559                     0.008949   \n",
       "6            0.008063                     0.009498   \n",
       "7            0.011527                     0.015346   \n",
       "8            0.011532                     0.018154   \n",
       "9            0.007512                     0.014831   \n",
       "10           0.000000                     0.000000   \n",
       "\n",
       "    Card Precision@100 Train Std  Execution time  Parameters summary  \n",
       "0                       0.040474        3.666392                   2  \n",
       "1                       0.032214        3.414093                   3  \n",
       "2                       0.034144        3.765976                   4  \n",
       "3                       0.029881        3.788764                   5  \n",
       "4                       0.028383        4.170064                   6  \n",
       "5                       0.026351        4.368153                   7  \n",
       "6                       0.031380        4.966671                   8  \n",
       "7                       0.028453        4.757738                   9  \n",
       "8                       0.028962        5.247802                  10  \n",
       "9                       0.031483        6.802245                  20  \n",
       "10                      0.028732        7.768848                  50  "
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_prequential"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us plot the validation and test performances in terms of AUC ROC, AP, and CP@100, as a function of the decision tree depth. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [],
   "source": [
    "performances_df_prequential['AUC ROC Test']=performances_df['AUC ROC Test']\n",
    "performances_df_prequential['Average precision Test']=performances_df['Average precision Test']\n",
    "performances_df_prequential['Card Precision@100 Test']=performances_df['Card Precision@100 Test']\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9oAAAEmCAYAAACd2OgMAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdd3hUVfrA8e+dkk5IqAJKMGiiFIEERVBAqUoEQcQIglhgxQIqLiIqiIgKNkCaoqiIuoCAIAi46wIWfgsqCwgocQkllIQS0maSybTz++MmY0J6mPT38zx5SG6bNyE5c997znmPppRSCCGEEEIIIYQQwisMVR2AEEIIIYQQQghRm0iiLYQQQgghhBBCeJEk2kIIIYQQQgghhBdJoi2EEEIIIYQQQniRJNpCCCGEEEIIIYQXSaIthBBCCCGEEEJ4kSTadcjGjRuJjIzko48+yrd9/vz5DB8+vNBzevTowdq1a/Nt++GHHxg9ejSdO3emS5cuPPLII/z+++9Fvu7atWuJjIzM99G+fXv69+/PF198UeD4nTt38sADDxAVFUXnzp0ZNWoU27dvL/TaZY1FCFG1imqHRMl27dpFZGQkTqez2ONOnjxJZGQkx48fr6TIhKgb0tPTmT17Nr1796ZDhw7079+fJUuW4HA4vPYaTqeTyMhIdu3aVej+UaNG5bufatOmDT169GD27NlejSNXVbc7aWlpzJ8/n8GDB9OpUyc6depETEwM77zzDmfPni3yvNTUVLp161YgnkOHDhEbG0uHDh246667+O233/Lt37RpE3379qVDhw48+uijJCcne/X7EXWLJNp1yMaNGwkLC+Orr74q9zWWL1/O+PHj6d69OytXruTTTz+lYcOG3HfffcUmuI0bN+ann37yfKxfv57evXvz8ssv8/PPP3uOW7duHWPGjKFDhw6sWrWKVatW0aNHDyZMmMCHH37olViEEFXHG+1QXdWpUyd++uknTCZTscc1a9aMn376icsvv7ySIhOi9ktNTWXYsGHs27ePmTNnsnHjRiZOnMjy5cuZMmVKpcYyevRoz/3Utm3bmD59OitWrGDJkiVef62qbHfi4+MZOHAgP//8M2PHjmXlypWsW7eOiRMn8r///Y8777yTX3/9tcB5aWlpjBs3rkCSnJmZ6bnHXLt2LdHR0TzyyCNYLBYAfvvtN5577jkeffRRVq5cicVi4dlnn/Xa9yPqICXqhNTUVNW2bVu1fv16FRERoQ4ePOjZ9+6776p777230PO6d++u1qxZo5RSKiEhQbVt21Z99dVXBY4bNWqUevjhhwu9xpo1a1T37t0L3de3b1/16quvKqWUOnv2rLruuuvUP/7xjwLHffPNN6pNmzbqzz//vKRYhBBVp7h2SAghqrMXXnhBxcTEKJvNlm/7rl27VEREhNq7d69XXsfhcKiIiAi1c+fOQvePHDlSvfPOOwW2T506VQ0aNMgrMVQH58+fV926dVPLli0r8pjVq1errl27qjNnzni2/fLLL6pXr15q4MCBKiIiQh07dsyz78svv1S33HKLcrlcSiml3G636tu3r1q1apVSSqlJkyapZ555xnP86dOnC1xDiLKQHu064ttvv8XHx4cBAwbQqlWrAsPBS2Pjxo2EhIQwaNCgAvtmzJjBCy+8UOZr+vj4YDQaAfj6668JCgpi2LBhBY7LjXvNmjUVFosQomIV1Q699dZbBaavLFmyhKFDhwKQkZHB5MmTiY6O5qabbmLq1KmeHohdu3bRo0cPZsyYQXR0NPPnz8fhcDB79mx69OhB27ZtufXWW/NNU7HZbLzwwgtER0fTvXt3vvzyS9q0acPJkydLfL2LrV27lnvuuYc5c+YQFRVFz549WbFihWf/c889x+TJkxk8eDBdunQhLi6uxOv//vvvjBw5kg4dOtC7d29Wr17t+V7zDuH8/PPP6d27N+3bt2fgwIFs27YNKDiEMy0tjalTp9KtWzeioqJ45plnSE1NzffzW7lyJT169KBLly5MmjQJm81Wnv9iIWolu93ON998w3333Yevr2++fTfccAPLli0jIiIC0Hthx4wZQ6dOnWjfvj3Dhw/nf//7H1B4ewWwYMECunbtyo033lju0T4mkwkfHx+gdrQ7c+bMYdCgQdx///0kJSUxbtw4OnXqxJgxY/jnP/9Jp06dGDJkCL179+bjjz/2nPef//yH2NhYz882r3379hEVFYXBoKc/mqYRFRXFnj17PPuvv/56z/HNmjWjRYsWnv1ClJUk2nXEhg0b6NGjByaTid69e7Nx48Yyz+U5dOgQ7dq18zRQebVq1Yorr7yy1Ney2+18+OGHHD58mH79+gGwf/9+2rZt60m8LxYdHc3evXu9HosQonIU1Q7FxMSwZ8+efPPttmzZQkxMDADPP/88KSkpfP7557z//vscPXo031DNM2fOYLFY+OqrrxgyZAgffPABW7du5d1332XLli0MGTKEmTNncubMGQBmzpzJ7t27+fDDD5kzZw4ffvghLpfLc72SXu9iv//+OwcOHGDFihVMmDCBmTNn8v3333v2f/311zz++ON88MEHXH311cVe/8KFCzzwwAOEh4fz1Vdf8fTTTzN9+vQCwyN///13Xn/9daZMmcKWLVsYMGAATz31FOnp6QXie+KJJ/jjjz947733+OSTTzh69Gi+4ZDJycls2rSJJUuW8Oqrr/LPf/6zXA9jhaitEhISyMzMpH379oXuv/HGG/H390cpxWOPPUbz5s1Zv349K1aswO1288Ybb3iOvbi9yp369tprr/Hxxx97OhRKy+Vy8fPPP7NhwwZ69erl2V6T250LFy7w7bffMmHCBDIzMxk1ahSNGjXiyy+/JCoqiilTphAZGYnBYGD48OFs3brVc93x48fzt7/9rdB7yXPnztGkSZN82xo2bOh5bzh79myx+4Uoq+InXIha4cyZM/z666+8+eabAPTr14+lS5fy/fff06dPn1JfJyMjgwYNGpQrhrNnz9KpUyfP1zabjfDwcObMmePZnpaWRsOGDYu8Rv369UlJSbnkWIQQla+kdig8PJx//etf3HfffZw4cYI//viDhQsXkpCQwL/+9S927txJSEgIALNnz6ZXr14kJiZ6rj9mzBhatmwJQEREBK+++iodO3YEYNy4cSxcuJCjR48SFBTEunXreO+99zxtz4svvsiYMWMASny9Zs2aFfr9zZ49m0aNGhEREcHPP//MypUr6dmzJwDXXnstffv2LdX1t27dSmBgIC+99BJGo5Hw8HBSU1Nxu935Xu/UqVMAtGjRghYtWvDII4/Qvn17zGZzvuMOHTrEzz//zKZNm2jdujWgjyC4/fbbPb1sTqeT559/nsjISK655hq6d+/O/v37y/C/K0TtlptI1qtXr9jjsrKyuPvuuxkxYgSBgYEADBkyhPfffz/fcXnbq1WrVjFq1ChuvfVWQB+VN3DgwGJfZ+nSpXz66acAZGdnYzQaueOOO3j44Yc9x9Tkduf777/nlltuwd/fn4ULF2IwGJgxYwYGg4GrrrqKVatW0aZNGwDCw8PzvRcUJysry9Prn8vHxwe7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1qmIiAgVFxenLly4oJ5//nl18803q7Zt26pbb71Vvf322yo7O7vAeRs2bFDDhg1TUVFRqkuXLmrcuHEqLi6uyBiKW0d7zpw5qk2bNvnO//XXX9WYMWPUDTfcoKKiotTIkSPV1q1bCz2/rLEIISpfaduh06dPq8jISM+aprmSk5PVxIkTVVRUlIqOjlbjx49XZ8+eVUoptXPnThUREaEcDofn+F9//VXdcccdqn379qp3797q/fffV/fcc49asGCBUkopi8WinnnmGdWxY0d18803q/fee09FRER41mIt7vUutmbNGnXzzTert956S3Xs2FH17dtXffPNN579kydPzrcua2muv3fvXjVs2DDVrl071a9fP/X1118X+r2uX79e3Xbbbapdu3aqV69e6rPPPlNKKXXixIl8a7+mpKSoiRMnqk6dOqnOnTuryZMnq9TU1CJ/foXFLIRQKikpSU2dOlX16NFDtW/fXt1+++1q6dKlym63e46ZP3++uvHGG1WnTp1UbGysWrNmjYqIiFCnTp0q9O9NKaU+/vhjddNNN6nOnTurDz/8UEVHR5d5He28anq7Y7FY1A033KD27dunUlNT1dixY9V1112nnnrqKbVz5051ww03qJtuukktXrxYuVwudeTIEWW1WvN9vxfHk2vfvn1q8ODBql27dmro0KFq//79+favXbtW3XLLLapjx47qscceU8nJycX+rIUojqaUTMQSQghRd3z33Xd07drVUxX4t99+Y8SIEezZs6fMU07Wrl3L3LlzCwydFEIIUX6rVq1i0aJFLFmyxLNG+cVcLhdvvfUWW7du5auvviIgIKCSoxSieFIMTQghRJ2yYMECtm7dyiOPPILVauXNN9+kV69eUtdBCCGqiXvuuYf09HSGDRtGTEwMvXr1olWrVgQEBHDhwgX27NnDqlWrMJvNfPzxx5Jki2pJerSFEELUKYcPH+aVV17ht99+w8fHh169evH888+XuEZuYaRHWwghKk58fDz/+Mc/2LVrF6dOnSI7O5v69etz7bXXMmDAAAYNGiQPSUW1JYm2EEIIIYQQQgjhRVJ1XAghhBBCCCGE8CJJtIUQQgghhBBCCC+SRFsIIYQQQgghhPAiSbSFEEIIIYQQQggvkkRbCCGEEEIIIYTwIkm0hRBCCCGEEEIIL5JEWwghhBBCCCGE8CJJtIUQQggh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RbOj2WyyElAI0axI5hdOigIZGfoycUmyhRBCiNCwWqFVK4iJiXQk4hTRkpLkXkoI0azIFUsIIYQQQgghhAghSbSFEEIIIYQQQogQCssebVVVmTJlCt988w0Wi4Xp06eTk5MDwOHDh5kwYULNsV9//TUTJ05k6NChPPzww/zwww/4/X7Gjx9P7969wxGeEEIIIYQQQggRNmFJtDds2IDf72fJkiUUFBQwc+ZM5s6dC0Bqair5+fkAbN26lWeeeYbrr7+elStXkpiYyKxZsyguLua6666TRFsIIYQQQgghRLMTlkR7y5Yt9OzZE4CuXbuybdu2447RNI1p06Yxe/ZsjEYjV199NVdddVXN40ajMRyhCSGEEEIIIYQQYRWWRNvlcuFwOGp+NhqNBAIBTEf1P9y4cSMdO3akffv2AMTGxtace/fdd/OHP/yhztcxGo0oioLT6QzxOwgdk8kk8TVSNMcGEp8QQgghhBDixMKSaDscDtxud83Pqqoek2QDrF69mtGjRx/zu4MHD3LnnXcycuRI+vfvX+frBKv6ZxYWFoYg6vBwOp0SXyNFc2zQMuLLyMg4RdEIIYQQQghx+ghL1fFu3brx4YcfAlBQUECnTp2OO+bLL7+kW7duNT8fOXKEm266ifvvv5+hQ4eGIywhhBBCCCGEECLsFE3TtFA/aXXV8R07dqBpGjNmzOCrr77C4/GQm5tLUVERY8eOZdWqVTXnTJ8+nXf/v717j6m6/uM4/jzctASzMldJOkBsXqbUWq25qMwltYTm1BkblGZFrRFztHMMmTiOl5N2WS4HZJdptmng2vqDoesyWu5UM23pAqJIM1AUhLjE/f37w3myX/1+BR45X+j1+O+ceb7ntXO2p37gIOXlgY+SA7zxxhuMHTs22PNERERERERELpvLctAWERERERER+be6LB8dFxEREREREfm30kFbREREREREJIh00BYREREREREJIh20RURERERERIJIB20RERERERGRIIoI9YChuvArxKqrq4mKisLr9TJ16tRQzwLgm2++YevWrezatYvjx4/j8XhwuVwkJiaybt06wsKG/+sbvb29vPDCC/zyyy/09PTw9NNPM23aNEdsA+jv72ft2rXU1dURHh7Opk2bMDPH7ANoampi8eLFvPXWW0RERDhq28MPP0xMTAwAsbGxZGVlOWqfDI1TO+fExoE6FwzqnAw3dW5w1LlLp87JsLERqqKiwtxut5mZHT582LKyskK86LySkhJ76KGHbOnSpWZm9tRTT5nf7zczs/z8fNu/f39IdpWWlprX6zUzs+bmZrv77rsds83M7MCBA+bxeMzMzO/3W1ZWlqP29fT02DPPPGP333+/1dbWOmpbV1eXpaWl/eE+J+2ToXNi55zaODN17lKpcxIK6tzgqHOXRp2T4TRivyRy6NAh7rrrLgCSkpI4evRoiBedN2XKFLZt2xa4fezYMW6//XYAkpOTOXjwYEh2paSk8NxzzwVuh4eHO2YbwIIFCygsLASgvr6eiRMnOmqfz+dj+fLlTJo0CXDO+wpQVVXFb7/9xsqVK8nMzOTIkSOO2idD58TOObVxoM5dKnVOQkGdGxx17tKoczKcRuxBu729nejo6MDt8PBw+vr6QrjovIULFxIR8fsn8s0Ml8sFwLhx42hrawvJrnHjxhEdHU17ezvZ2dnk5OQ4ZtsFERERuN1uCgsLWbhwoWP27du3j2uuuSbwDwFwzvsKMHbsWB5//HHefPNN1q9fT25urqP2ydA5sXNObdyF51fnhkadk1BR5wZHnRs6dU6G24g9aEdHR9PR0RG4PTAw8IcoOsXFP0fR0dHB+PHjQ7aloaGBzMxM0tLSWLRokaO2XeDz+aioqCA/P5/u7u7A/aHcV1ZWxsGDB8nIyOC7777D7XbT3NzsiG0AcXFxpKam4nK5iIuLY8KECTQ1NTlmnwzdSOic0zqizg2NOiehos4Nnjo3NOqcDLcRe9C+9dZbqaysBODIkSNMnz49xIv+2syZM/niiy8AqKys5LbbbgvJjrNnz7Jy5Uqef/55lixZ4qhtAB988AHFxcUAXHHFFbhcLmbPnu2Ifbt37+bdd99l165dzJgxA5/PR3JysiO2AZSWlrJ582YATp8+TXt7O/PmzXPMPhm6kdA5J3VEnRs6dU5CRZ0bHHVu6NQ5GW4uM7NQjxiKC/9LZU1NDWbGxo0bSUhICPUsAE6ePMnq1avZu3cvdXV15Ofn09vbS3x8PF6vl/Dw8GHf5PV6KS8vJz4+PnBfXl4eXq835NsAOjs7WbNmDWfPnqWvr48nnniChIQER7x2F8vIyKCgoICwsDDHbOvp6WHNmjXU19fjcrnIzc3l6quvdsw+GTqnds6JjQN1LljUORlO6tzgqHPBoc7JcBixB20RERERERERJxqxHx0XERERERERcSIdtEVERERERESCSAdtERERERERkSDSQVtEREREREQkiHTQFhEREREREQkiHbQdbvPmzWRkZJCSksI999xDRkYG2dnZoZ71J/v27eOjjz4KyXMvW7aMkydPDuoxLS0tfPjhhwB4PJ7A7/AUkeGnzv09dU5kZFPn/p46J6NNRKgHyP/n8XiA8+H78ccfyc3NDfGiv7Z48eJQTxiU6upqPv74YxYtWhTqKSL/eurc5aHOiTiHOnd5qHPiZDpoj1Aej4eWlhZaWlooLi5mx44dfPXVV5gZjz32GA888ADV1dV4vV4AJkyYwMaNG4mJiQlcY9u2bRw/fpxz587R2tpKeno6+/fvp66uDp/PR1JSEi+99BJHjx6lo6ODhIQENm3ahM/nIzIykpycHFasWMGKFSv49ttvmThxIvHx8ZSUlBAZGcmpU6dYvnw5fr+fqqoqMjMzSU9PZ/78+ZSXlzNmzBi2bt1KfHw8kydP/tvHXeyVV17hs88+4/rrr+fcuXMAtLW1kZeXF7i9du1abr75Zu677z7mzp3LiRMnSExMZMOGDRQVFVFVVcWePXsA2LNnDzt27KC9vZ2CggLmzJkzHG+jiPwf6pw6JzLaqXPqnIxiJiNCWVmZbdmyJXDb7Xbb22+/bWZmn376qeXk5JiZWVdXl6Wmplpra6stXbrUvv/+ezMz27t3r7388st/uOZrr71meXl5ZmZWXFxs2dnZZmZWWlpqXq/X2trarKSkxMzM+vv7LSUlxU6dOmU9PT22dOlSy83Nta1btwau9d5775nf77cHH3zQenp67PDhw5acnGzd3d124sQJS01NNTOze++917q6uszMbMuWLVZWVvaPHndBdXW1PfLII9bf329tbW1255132s8//2wvvvii7d6928zM6urqbPny5WZmNmvWLPvpp5/MzCw7O9sqKirM7/cHXjO3222vv/564HVet27dkN8nERk6de536pzI6KTO/U6dk9FO39EeweLi4gCoqanh2LFjZGRkANDX10d9fT0//PAD69evB6C3tzfw5y82c+ZMAGJiYpg2bRoAV111Fd3d3YwZM4bm5mZWr17NlVdeSWdnJ729vURGRvLoo4/idrv55JNP/nTNxMREIiMjiYmJYcqUKURFRQWu+d/MbNCPq62tZfbs2YSFhREdHc306dMDr4Pf76e8vByAX3/9FYAbbriBqVOnAnDLLbdQV1dHUlLSH645a9YsACZOnEhXV9f/ftFFZFipc+qcyGinzqlzMjrpoD2CuVwuAOLj47njjjsoLCxkYGCA7du3ExsbS1xcHD6fjxtvvJFDhw5x5syZ/3mNv1JZWUlDQwOvvvoqzc3NHDhwADOjtbWVoqIiPB4P+fn5FBUV/eNrAkRFRdHY2EhsbCxVVVUkJCT8o8ddEBcXx86dOxkYGKCrq4va2trA65CamsqiRYtoamri/fffB+D06dOcOXOG6667jq+//pq0tDTCwsIYGBj4x5tFJDTUOXVOZLRT59Q5GZ100B4F5s+fz5dffkl6ejqdnZ0sWLCA6OhoCgoKcLvd9Pf3A7Bhw4ZBXXfOnDls376dZcuWERUVxU033URjYyM+n49Vq1aRlpbG0aNH2blz56Cuu2rVKp588kkmT57M+PHjB/VYgBkzZpCSksKSJUuYNGkS1157LQBZWVnk5eWxd+9e2tvbefbZZ4HzfxEUFhbS0NDA3LlzmT9/Po2NjdTU1PDOO+8M+vlFZPipc+qcyGinzqlzMrq47OLPeoiMQvPmzePzzz8P9QwRkctGnROR0U6dk5FGv0dbREREREREJIj0HW0RERERERGRINJ3tEVERERERESCSAdtERERERERkSDSQVtEREREREQkiHTQFhEREREREQkiHbRFREREREREgkgHbREREREREZEg+g/3jT5bDhHnHwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 1080x288 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "get_performances_plots(performances_df_prequential, \n",
    "                       performance_metrics_list=['AUC ROC', 'Average precision', 'Card Precision@100'], \n",
    "                       expe_type_list=['Test','Validation'], expe_type_color_list=['#008000','#FF0000'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can also compute the performances on the next `n_folds` weeks using the same code, but setting the starting day for training in such a way that estimates for the test period are obtained. This allows to provide confidence intervals for the performances on the test data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Total execution time: 53.54s\n"
     ]
    }
   ],
   "source": [
    "list_params = [2,3,4,5,6,7,8,9,10,20,50]\n",
    "\n",
    "start_time=time.time()\n",
    "\n",
    "n_folds=4\n",
    "\n",
    "performances_df_prequential_test=pd.DataFrame()\n",
    "\n",
    "for max_depth in list_params:\n",
    "    \n",
    "    classifier = sklearn.tree.DecisionTreeClassifier(max_depth = max_depth, random_state=0)\n",
    "\n",
    "    performances_df_prequential_test=performances_df_prequential_test.append(\n",
    "        prequential_validation(\n",
    "            transactions_df, classifier, \n",
    "            start_date_training=start_date_training \n",
    "                +datetime.timedelta(days=delta_test*(n_folds-1)), \n",
    "            delta_train=delta_train, \n",
    "            delta_delay=delta_delay, \n",
    "            delta_assessment=delta_test,\n",
    "            n_folds=n_folds,\n",
    "            type_test=\"Test\", parameter_summary=max_depth\n",
    "        )[0]\n",
    "    )\n",
    "    \n",
    "performances_df_prequential_test.reset_index(inplace=True,drop=True)\n",
    "\n",
    "print(\"Total execution time: \"+str(round(time.time()-start_time,2))+\"s\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Test</th>\n",
       "      <th>Average precision Test</th>\n",
       "      <th>Card Precision@100 Test</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>AUC ROC Test Std</th>\n",
       "      <th>Average precision Test Std</th>\n",
       "      <th>Card Precision@100 Test Std</th>\n",
       "      <th>AUC ROC Train Std</th>\n",
       "      <th>Average precision Train Std</th>\n",
       "      <th>Card Precision@100 Train Std</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.791909</td>\n",
       "      <td>0.541761</td>\n",
       "      <td>0.265000</td>\n",
       "      <td>0.807785</td>\n",
       "      <td>0.592120</td>\n",
       "      <td>0.394643</td>\n",
       "      <td>0.017769</td>\n",
       "      <td>0.031476</td>\n",
       "      <td>0.019756</td>\n",
       "      <td>0.011559</td>\n",
       "      <td>0.017914</td>\n",
       "      <td>0.004088</td>\n",
       "      <td>3.404004</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.809012</td>\n",
       "      <td>0.578885</td>\n",
       "      <td>0.281429</td>\n",
       "      <td>0.820076</td>\n",
       "      <td>0.623315</td>\n",
       "      <td>0.410714</td>\n",
       "      <td>0.009125</td>\n",
       "      <td>0.014434</td>\n",
       "      <td>0.015940</td>\n",
       "      <td>0.007795</td>\n",
       "      <td>0.015303</td>\n",
       "      <td>0.003712</td>\n",
       "      <td>3.928414</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.812555</td>\n",
       "      <td>0.601088</td>\n",
       "      <td>0.282500</td>\n",
       "      <td>0.829963</td>\n",
       "      <td>0.645225</td>\n",
       "      <td>0.412500</td>\n",
       "      <td>0.010319</td>\n",
       "      <td>0.020216</td>\n",
       "      <td>0.015199</td>\n",
       "      <td>0.006963</td>\n",
       "      <td>0.015748</td>\n",
       "      <td>0.005285</td>\n",
       "      <td>3.725971</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.810138</td>\n",
       "      <td>0.600306</td>\n",
       "      <td>0.284286</td>\n",
       "      <td>0.835835</td>\n",
       "      <td>0.658589</td>\n",
       "      <td>0.416071</td>\n",
       "      <td>0.008586</td>\n",
       "      <td>0.016797</td>\n",
       "      <td>0.004286</td>\n",
       "      <td>0.008285</td>\n",
       "      <td>0.015249</td>\n",
       "      <td>0.008353</td>\n",
       "      <td>4.961377</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.804437</td>\n",
       "      <td>0.585132</td>\n",
       "      <td>0.281429</td>\n",
       "      <td>0.847145</td>\n",
       "      <td>0.671259</td>\n",
       "      <td>0.420000</td>\n",
       "      <td>0.007974</td>\n",
       "      <td>0.005053</td>\n",
       "      <td>0.007626</td>\n",
       "      <td>0.007900</td>\n",
       "      <td>0.016706</td>\n",
       "      <td>0.006145</td>\n",
       "      <td>4.066389</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.782710</td>\n",
       "      <td>0.554860</td>\n",
       "      <td>0.268929</td>\n",
       "      <td>0.859658</td>\n",
       "      <td>0.692724</td>\n",
       "      <td>0.427500</td>\n",
       "      <td>0.012483</td>\n",
       "      <td>0.011771</td>\n",
       "      <td>0.009813</td>\n",
       "      <td>0.013379</td>\n",
       "      <td>0.012199</td>\n",
       "      <td>0.012990</td>\n",
       "      <td>4.978631</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.774783</td>\n",
       "      <td>0.544933</td>\n",
       "      <td>0.263571</td>\n",
       "      <td>0.865567</td>\n",
       "      <td>0.708766</td>\n",
       "      <td>0.429643</td>\n",
       "      <td>0.014568</td>\n",
       "      <td>0.003392</td>\n",
       "      <td>0.007593</td>\n",
       "      <td>0.015050</td>\n",
       "      <td>0.009896</td>\n",
       "      <td>0.012951</td>\n",
       "      <td>4.452925</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.761763</td>\n",
       "      <td>0.520208</td>\n",
       "      <td>0.258571</td>\n",
       "      <td>0.877844</td>\n",
       "      <td>0.721114</td>\n",
       "      <td>0.431786</td>\n",
       "      <td>0.012098</td>\n",
       "      <td>0.012309</td>\n",
       "      <td>0.009949</td>\n",
       "      <td>0.012280</td>\n",
       "      <td>0.014920</td>\n",
       "      <td>0.012792</td>\n",
       "      <td>5.070283</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.758138</td>\n",
       "      <td>0.504909</td>\n",
       "      <td>0.257500</td>\n",
       "      <td>0.881659</td>\n",
       "      <td>0.737896</td>\n",
       "      <td>0.435357</td>\n",
       "      <td>0.011140</td>\n",
       "      <td>0.013154</td>\n",
       "      <td>0.010467</td>\n",
       "      <td>0.012795</td>\n",
       "      <td>0.012402</td>\n",
       "      <td>0.012990</td>\n",
       "      <td>5.592131</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.754024</td>\n",
       "      <td>0.439422</td>\n",
       "      <td>0.261071</td>\n",
       "      <td>0.969552</td>\n",
       "      <td>0.878847</td>\n",
       "      <td>0.491429</td>\n",
       "      <td>0.009848</td>\n",
       "      <td>0.034828</td>\n",
       "      <td>0.014335</td>\n",
       "      <td>0.010886</td>\n",
       "      <td>0.026480</td>\n",
       "      <td>0.021500</td>\n",
       "      <td>6.487757</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.797221</td>\n",
       "      <td>0.334055</td>\n",
       "      <td>0.258214</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.568571</td>\n",
       "      <td>0.005425</td>\n",
       "      <td>0.020390</td>\n",
       "      <td>0.012095</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.014250</td>\n",
       "      <td>6.767934</td>\n",
       "      <td>50</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    AUC ROC Test  Average precision Test  Card Precision@100 Test  \\\n",
       "0       0.791909                0.541761                 0.265000   \n",
       "1       0.809012                0.578885                 0.281429   \n",
       "2       0.812555                0.601088                 0.282500   \n",
       "3       0.810138                0.600306                 0.284286   \n",
       "4       0.804437                0.585132                 0.281429   \n",
       "5       0.782710                0.554860                 0.268929   \n",
       "6       0.774783                0.544933                 0.263571   \n",
       "7       0.761763                0.520208                 0.258571   \n",
       "8       0.758138                0.504909                 0.257500   \n",
       "9       0.754024                0.439422                 0.261071   \n",
       "10      0.797221                0.334055                 0.258214   \n",
       "\n",
       "    AUC ROC Train  Average precision Train  Card Precision@100 Train  \\\n",
       "0        0.807785                 0.592120                  0.394643   \n",
       "1        0.820076                 0.623315                  0.410714   \n",
       "2        0.829963                 0.645225                  0.412500   \n",
       "3        0.835835                 0.658589                  0.416071   \n",
       "4        0.847145                 0.671259                  0.420000   \n",
       "5        0.859658                 0.692724                  0.427500   \n",
       "6        0.865567                 0.708766                  0.429643   \n",
       "7        0.877844                 0.721114                  0.431786   \n",
       "8        0.881659                 0.737896                  0.435357   \n",
       "9        0.969552                 0.878847                  0.491429   \n",
       "10       1.000000                 1.000000                  0.568571   \n",
       "\n",
       "    AUC ROC Test Std  Average precision Test Std  Card Precision@100 Test Std  \\\n",
       "0           0.017769                    0.031476                     0.019756   \n",
       "1           0.009125                    0.014434                     0.015940   \n",
       "2           0.010319                    0.020216                     0.015199   \n",
       "3           0.008586                    0.016797                     0.004286   \n",
       "4           0.007974                    0.005053                     0.007626   \n",
       "5           0.012483                    0.011771                     0.009813   \n",
       "6           0.014568                    0.003392                     0.007593   \n",
       "7           0.012098                    0.012309                     0.009949   \n",
       "8           0.011140                    0.013154                     0.010467   \n",
       "9           0.009848                    0.034828                     0.014335   \n",
       "10          0.005425                    0.020390                     0.012095   \n",
       "\n",
       "    AUC ROC Train Std  Average precision Train Std  \\\n",
       "0            0.011559                     0.017914   \n",
       "1            0.007795                     0.015303   \n",
       "2            0.006963                     0.015748   \n",
       "3            0.008285                     0.015249   \n",
       "4            0.007900                     0.016706   \n",
       "5            0.013379                     0.012199   \n",
       "6            0.015050                     0.009896   \n",
       "7            0.012280                     0.014920   \n",
       "8            0.012795                     0.012402   \n",
       "9            0.010886                     0.026480   \n",
       "10           0.000000                     0.000000   \n",
       "\n",
       "    Card Precision@100 Train Std  Execution time  Parameters summary  \n",
       "0                       0.004088        3.404004                   2  \n",
       "1                       0.003712        3.928414                   3  \n",
       "2                       0.005285        3.725971                   4  \n",
       "3                       0.008353        4.961377                   5  \n",
       "4                       0.006145        4.066389                   6  \n",
       "5                       0.012990        4.978631                   7  \n",
       "6                       0.012951        4.452925                   8  \n",
       "7                       0.012792        5.070283                   9  \n",
       "8                       0.012990        5.592131                  10  \n",
       "9                       0.021500        6.487757                  20  \n",
       "10                      0.014250        6.767934                  50  "
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_prequential_test"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us plot the validation and test accuracies in terms of AUC ROC, AP and CP@100, as a function of the decision tree depth. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "performances_df_prequential['AUC ROC Test']=performances_df_prequential_test['AUC ROC Test']\n",
    "performances_df_prequential['Average precision Test']=performances_df_prequential_test['Average precision Test']\n",
    "performances_df_prequential['Card Precision@100 Test']=performances_df_prequential_test['Card Precision@100 Test']\n",
    "performances_df_prequential['AUC ROC Test Std']=performances_df_prequential_test['AUC ROC Test Std']\n",
    "performances_df_prequential['Average precision Test Std']=performances_df_prequential_test['Average precision Test Std']\n",
    "performances_df_prequential['Card Precision@100 Test Std']=performances_df_prequential_test['Card Precision@100 Test Std']\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>AUC ROC Train</th>\n",
       "      <th>Average precision Train</th>\n",
       "      <th>Card Precision@100 Train</th>\n",
       "      <th>AUC ROC Validation Std</th>\n",
       "      <th>Average precision Validation Std</th>\n",
       "      <th>Card Precision@100 Validation Std</th>\n",
       "      <th>AUC ROC Train Std</th>\n",
       "      <th>Average precision Train Std</th>\n",
       "      <th>Card Precision@100 Train Std</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters summary</th>\n",
       "      <th>AUC ROC Test</th>\n",
       "      <th>Average precision Test</th>\n",
       "      <th>Card Precision@100 Test</th>\n",
       "      <th>AUC ROC Test Std</th>\n",
       "      <th>Average precision Test Std</th>\n",
       "      <th>Card Precision@100 Test Std</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.790786</td>\n",
       "      <td>0.549767</td>\n",
       "      <td>0.256429</td>\n",
       "      <td>0.804231</td>\n",
       "      <td>0.593561</td>\n",
       "      <td>0.402500</td>\n",
       "      <td>0.012035</td>\n",
       "      <td>0.022134</td>\n",
       "      <td>0.014481</td>\n",
       "      <td>0.013359</td>\n",
       "      <td>0.018224</td>\n",
       "      <td>0.040474</td>\n",
       "      <td>3.666392</td>\n",
       "      <td>2</td>\n",
       "      <td>0.791909</td>\n",
       "      <td>0.541761</td>\n",
       "      <td>0.265000</td>\n",
       "      <td>0.017769</td>\n",
       "      <td>0.031476</td>\n",
       "      <td>0.019756</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.802717</td>\n",
       "      <td>0.573414</td>\n",
       "      <td>0.267143</td>\n",
       "      <td>0.818140</td>\n",
       "      <td>0.623562</td>\n",
       "      <td>0.421429</td>\n",
       "      <td>0.017607</td>\n",
       "      <td>0.027186</td>\n",
       "      <td>0.016067</td>\n",
       "      <td>0.011437</td>\n",
       "      <td>0.016412</td>\n",
       "      <td>0.032214</td>\n",
       "      <td>3.414093</td>\n",
       "      <td>3</td>\n",
       "      <td>0.809012</td>\n",
       "      <td>0.578885</td>\n",
       "      <td>0.281429</td>\n",
       "      <td>0.009125</td>\n",
       "      <td>0.014434</td>\n",
       "      <td>0.015940</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.800690</td>\n",
       "      <td>0.554134</td>\n",
       "      <td>0.264286</td>\n",
       "      <td>0.825978</td>\n",
       "      <td>0.644766</td>\n",
       "      <td>0.426429</td>\n",
       "      <td>0.017878</td>\n",
       "      <td>0.038293</td>\n",
       "      <td>0.014321</td>\n",
       "      <td>0.009928</td>\n",
       "      <td>0.018337</td>\n",
       "      <td>0.034144</td>\n",
       "      <td>3.765976</td>\n",
       "      <td>4</td>\n",
       "      <td>0.812555</td>\n",
       "      <td>0.601088</td>\n",
       "      <td>0.282500</td>\n",
       "      <td>0.010319</td>\n",
       "      <td>0.020216</td>\n",
       "      <td>0.015199</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.804218</td>\n",
       "      <td>0.546094</td>\n",
       "      <td>0.267857</td>\n",
       "      <td>0.831289</td>\n",
       "      <td>0.657368</td>\n",
       "      <td>0.431429</td>\n",
       "      <td>0.016505</td>\n",
       "      <td>0.042197</td>\n",
       "      <td>0.013869</td>\n",
       "      <td>0.007867</td>\n",
       "      <td>0.016387</td>\n",
       "      <td>0.029881</td>\n",
       "      <td>3.788764</td>\n",
       "      <td>5</td>\n",
       "      <td>0.810138</td>\n",
       "      <td>0.600306</td>\n",
       "      <td>0.284286</td>\n",
       "      <td>0.008586</td>\n",
       "      <td>0.016797</td>\n",
       "      <td>0.004286</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.798603</td>\n",
       "      <td>0.537006</td>\n",
       "      <td>0.264643</td>\n",
       "      <td>0.839032</td>\n",
       "      <td>0.669597</td>\n",
       "      <td>0.432143</td>\n",
       "      <td>0.024225</td>\n",
       "      <td>0.037056</td>\n",
       "      <td>0.008474</td>\n",
       "      <td>0.002592</td>\n",
       "      <td>0.012448</td>\n",
       "      <td>0.028383</td>\n",
       "      <td>4.170064</td>\n",
       "      <td>6</td>\n",
       "      <td>0.804437</td>\n",
       "      <td>0.585132</td>\n",
       "      <td>0.281429</td>\n",
       "      <td>0.007974</td>\n",
       "      <td>0.005053</td>\n",
       "      <td>0.007626</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.795636</td>\n",
       "      <td>0.530609</td>\n",
       "      <td>0.262500</td>\n",
       "      <td>0.846446</td>\n",
       "      <td>0.681837</td>\n",
       "      <td>0.436429</td>\n",
       "      <td>0.023144</td>\n",
       "      <td>0.040323</td>\n",
       "      <td>0.006804</td>\n",
       "      <td>0.005559</td>\n",
       "      <td>0.008949</td>\n",
       "      <td>0.026351</td>\n",
       "      <td>4.368153</td>\n",
       "      <td>7</td>\n",
       "      <td>0.782710</td>\n",
       "      <td>0.554860</td>\n",
       "      <td>0.268929</td>\n",
       "      <td>0.012483</td>\n",
       "      <td>0.011771</td>\n",
       "      <td>0.009813</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.795142</td>\n",
       "      <td>0.516246</td>\n",
       "      <td>0.260714</td>\n",
       "      <td>0.859548</td>\n",
       "      <td>0.694885</td>\n",
       "      <td>0.440000</td>\n",
       "      <td>0.023081</td>\n",
       "      <td>0.033545</td>\n",
       "      <td>0.009715</td>\n",
       "      <td>0.008063</td>\n",
       "      <td>0.009498</td>\n",
       "      <td>0.031380</td>\n",
       "      <td>4.966671</td>\n",
       "      <td>8</td>\n",
       "      <td>0.774783</td>\n",
       "      <td>0.544933</td>\n",
       "      <td>0.263571</td>\n",
       "      <td>0.014568</td>\n",
       "      <td>0.003392</td>\n",
       "      <td>0.007593</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.785849</td>\n",
       "      <td>0.505189</td>\n",
       "      <td>0.260357</td>\n",
       "      <td>0.864869</td>\n",
       "      <td>0.717259</td>\n",
       "      <td>0.447500</td>\n",
       "      <td>0.026249</td>\n",
       "      <td>0.040393</td>\n",
       "      <td>0.009813</td>\n",
       "      <td>0.011527</td>\n",
       "      <td>0.015346</td>\n",
       "      <td>0.028453</td>\n",
       "      <td>4.757738</td>\n",
       "      <td>9</td>\n",
       "      <td>0.761763</td>\n",
       "      <td>0.520208</td>\n",
       "      <td>0.258571</td>\n",
       "      <td>0.012098</td>\n",
       "      <td>0.012309</td>\n",
       "      <td>0.009949</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.786784</td>\n",
       "      <td>0.493543</td>\n",
       "      <td>0.257143</td>\n",
       "      <td>0.887622</td>\n",
       "      <td>0.727672</td>\n",
       "      <td>0.448571</td>\n",
       "      <td>0.031165</td>\n",
       "      <td>0.048307</td>\n",
       "      <td>0.009949</td>\n",
       "      <td>0.011532</td>\n",
       "      <td>0.018154</td>\n",
       "      <td>0.028962</td>\n",
       "      <td>5.247802</td>\n",
       "      <td>10</td>\n",
       "      <td>0.758138</td>\n",
       "      <td>0.504909</td>\n",
       "      <td>0.257500</td>\n",
       "      <td>0.011140</td>\n",
       "      <td>0.013154</td>\n",
       "      <td>0.010467</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.780408</td>\n",
       "      <td>0.450980</td>\n",
       "      <td>0.264286</td>\n",
       "      <td>0.964275</td>\n",
       "      <td>0.862459</td>\n",
       "      <td>0.496786</td>\n",
       "      <td>0.022168</td>\n",
       "      <td>0.031413</td>\n",
       "      <td>0.007890</td>\n",
       "      <td>0.007512</td>\n",
       "      <td>0.014831</td>\n",
       "      <td>0.031483</td>\n",
       "      <td>6.802245</td>\n",
       "      <td>20</td>\n",
       "      <td>0.754024</td>\n",
       "      <td>0.439422</td>\n",
       "      <td>0.261071</td>\n",
       "      <td>0.009848</td>\n",
       "      <td>0.034828</td>\n",
       "      <td>0.014335</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.822564</td>\n",
       "      <td>0.341818</td>\n",
       "      <td>0.265714</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>1.000000</td>\n",
       "      <td>0.578571</td>\n",
       "      <td>0.013407</td>\n",
       "      <td>0.026227</td>\n",
       "      <td>0.008512</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.028732</td>\n",
       "      <td>7.768848</td>\n",
       "      <td>50</td>\n",
       "      <td>0.797221</td>\n",
       "      <td>0.334055</td>\n",
       "      <td>0.258214</td>\n",
       "      <td>0.005425</td>\n",
       "      <td>0.020390</td>\n",
       "      <td>0.012095</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    AUC ROC Validation  Average precision Validation  \\\n",
       "0             0.790786                      0.549767   \n",
       "1             0.802717                      0.573414   \n",
       "2             0.800690                      0.554134   \n",
       "3             0.804218                      0.546094   \n",
       "4             0.798603                      0.537006   \n",
       "5             0.795636                      0.530609   \n",
       "6             0.795142                      0.516246   \n",
       "7             0.785849                      0.505189   \n",
       "8             0.786784                      0.493543   \n",
       "9             0.780408                      0.450980   \n",
       "10            0.822564                      0.341818   \n",
       "\n",
       "    Card Precision@100 Validation  AUC ROC Train  Average precision Train  \\\n",
       "0                        0.256429       0.804231                 0.593561   \n",
       "1                        0.267143       0.818140                 0.623562   \n",
       "2                        0.264286       0.825978                 0.644766   \n",
       "3                        0.267857       0.831289                 0.657368   \n",
       "4                        0.264643       0.839032                 0.669597   \n",
       "5                        0.262500       0.846446                 0.681837   \n",
       "6                        0.260714       0.859548                 0.694885   \n",
       "7                        0.260357       0.864869                 0.717259   \n",
       "8                        0.257143       0.887622                 0.727672   \n",
       "9                        0.264286       0.964275                 0.862459   \n",
       "10                       0.265714       1.000000                 1.000000   \n",
       "\n",
       "    Card Precision@100 Train  AUC ROC Validation Std  \\\n",
       "0                   0.402500                0.012035   \n",
       "1                   0.421429                0.017607   \n",
       "2                   0.426429                0.017878   \n",
       "3                   0.431429                0.016505   \n",
       "4                   0.432143                0.024225   \n",
       "5                   0.436429                0.023144   \n",
       "6                   0.440000                0.023081   \n",
       "7                   0.447500                0.026249   \n",
       "8                   0.448571                0.031165   \n",
       "9                   0.496786                0.022168   \n",
       "10                  0.578571                0.013407   \n",
       "\n",
       "    Average precision Validation Std  Card Precision@100 Validation Std  \\\n",
       "0                           0.022134                           0.014481   \n",
       "1                           0.027186                           0.016067   \n",
       "2                           0.038293                           0.014321   \n",
       "3                           0.042197                           0.013869   \n",
       "4                           0.037056                           0.008474   \n",
       "5                           0.040323                           0.006804   \n",
       "6                           0.033545                           0.009715   \n",
       "7                           0.040393                           0.009813   \n",
       "8                           0.048307                           0.009949   \n",
       "9                           0.031413                           0.007890   \n",
       "10                          0.026227                           0.008512   \n",
       "\n",
       "    AUC ROC Train Std  Average precision Train Std  \\\n",
       "0            0.013359                     0.018224   \n",
       "1            0.011437                     0.016412   \n",
       "2            0.009928                     0.018337   \n",
       "3            0.007867                     0.016387   \n",
       "4            0.002592                     0.012448   \n",
       "5            0.005559                     0.008949   \n",
       "6            0.008063                     0.009498   \n",
       "7            0.011527                     0.015346   \n",
       "8            0.011532                     0.018154   \n",
       "9            0.007512                     0.014831   \n",
       "10           0.000000                     0.000000   \n",
       "\n",
       "    Card Precision@100 Train Std  Execution time  Parameters summary  \\\n",
       "0                       0.040474        3.666392                   2   \n",
       "1                       0.032214        3.414093                   3   \n",
       "2                       0.034144        3.765976                   4   \n",
       "3                       0.029881        3.788764                   5   \n",
       "4                       0.028383        4.170064                   6   \n",
       "5                       0.026351        4.368153                   7   \n",
       "6                       0.031380        4.966671                   8   \n",
       "7                       0.028453        4.757738                   9   \n",
       "8                       0.028962        5.247802                  10   \n",
       "9                       0.031483        6.802245                  20   \n",
       "10                      0.028732        7.768848                  50   \n",
       "\n",
       "    AUC ROC Test  Average precision Test  Card Precision@100 Test  \\\n",
       "0       0.791909                0.541761                 0.265000   \n",
       "1       0.809012                0.578885                 0.281429   \n",
       "2       0.812555                0.601088                 0.282500   \n",
       "3       0.810138                0.600306                 0.284286   \n",
       "4       0.804437                0.585132                 0.281429   \n",
       "5       0.782710                0.554860                 0.268929   \n",
       "6       0.774783                0.544933                 0.263571   \n",
       "7       0.761763                0.520208                 0.258571   \n",
       "8       0.758138                0.504909                 0.257500   \n",
       "9       0.754024                0.439422                 0.261071   \n",
       "10      0.797221                0.334055                 0.258214   \n",
       "\n",
       "    AUC ROC Test Std  Average precision Test Std  Card Precision@100 Test Std  \n",
       "0           0.017769                    0.031476                     0.019756  \n",
       "1           0.009125                    0.014434                     0.015940  \n",
       "2           0.010319                    0.020216                     0.015199  \n",
       "3           0.008586                    0.016797                     0.004286  \n",
       "4           0.007974                    0.005053                     0.007626  \n",
       "5           0.012483                    0.011771                     0.009813  \n",
       "6           0.014568                    0.003392                     0.007593  \n",
       "7           0.012098                    0.012309                     0.009949  \n",
       "8           0.011140                    0.013154                     0.010467  \n",
       "9           0.009848                    0.034828                     0.014335  \n",
       "10          0.005425                    0.020390                     0.012095  "
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df_prequential"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9oAAAEmCAYAAACd2OgMAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdd3hUVfrA8e+9U1ImlVAFiYIkSifYQANIESWCICKCsvYV3bUvsqgosIhgwwYoVmxLF6SILoL1JxaWruBKl076ZPrc8/tjyJAhPaSS9/M8PMJt884kc7zvPee8R1NKKYQQQgghhBBCCFEp9JoOQAghhBBCCCGEOJNIoi2EEEIIIYQQQlQiSbSFEEIIIYQQQohKJIm2EEIIIYQQQghRiSTRFkIIIYQQQgghKpEk2kIIIYQQQgghRCWSRLseWb58OcnJybzzzjsh21999VVGjBhR5Dk9evRg8eLFIdu++eYbbrnlFi688EIuueQS7r77bn799ddiX3fx4sUkJyeH/OnQoQP9+/fn448/LnT8unXruPXWW0lJSeHCCy9k1KhRfPXVV0Veu7yxCCFqVnHtkCjdjz/+SHJyMj6fr8Tj/vzzT5KTk9m7d281RSZE/ZCTk8O0adPo06cPnTp1on///syePRuv11tpr+Hz+UhOTubHH38scv+oUaNC7qfatm1Ljx49mDZtWqXGka+m253s7GxeffVVBg8eTJcuXejSpQtpaWm8+OKLHD16tNjzsrKy6N69e6F4tm/fzvDhw+nUqRPXXXcdmzdvDtm/cuVK+vXrR6dOnbjnnntIT0+v1Pcj6hdJtOuR5cuXk5iYyCeffFLha3zwwQfcd999pKamMm/ePN5//30SEhK46aabSkxwGzVqxHfffRf8s3TpUvr06cPEiRP56aefgsctWbKEO++8k06dOjF//nzmz59Pjx49uP/++3nrrbcqJRYhRM2pjHaovurSpQvfffcdZrO5xOOaNWvGd999R4sWLaopMiHOfFlZWQwbNoxNmzYxefJkli9fzsMPP8wHH3zAuHHjqjWWW265JXg/tXbtWiZMmMDcuXOZPXt2pb9WTbY7O3fuZODAgfz000/cddddzJs3jyVLlvDwww/zv//9j2uvvZZffvml0HnZ2dmMHj26UJLscDiC95iLFy+ma9eu3H333djtdgA2b97MP//5T+655x7mzZuH3W7n0UcfrbT3I+ohJeqFrKws1a5dO7V06VKVlJSktm3bFtz3yiuvqBtvvLHI81JTU9WiRYuUUkrt27dPtWvXTn3yySeFjhs1apS64447irzGokWLVGpqapH7+vXrp55++mmllFJHjx5VHTt2VP/+978LHbdixQrVtm1b9fvvv59WLEKImlNSOySEELXZ448/rtLS0pTL5QrZ/uOPP6qkpCS1cePGSnkdr9erkpKS1Lp164rcf/PNN6sXX3yx0Pbx48erQYMGVUoMtcHx48dV9+7d1Zw5c4o9ZuHChapbt27qyJEjwW0///yz6t27txo4cKBKSkpSe/bsCe5bsGCB6tWrl/L7/UoppQzDUP369VPz589XSik1ZswY9cgjjwSPP3jwYKFrCFEe0qNdT3z++edYrVYGDBjAOeecU2g4eFksX76cuLg4Bg0aVGjfpEmTePzxx8t9TavVislkAuDTTz8lKiqKYcOGFTouP+5FixZVWSxCiKpVXDv0/PPPF5q+Mnv2bIYOHQpAbm4uY8eOpWvXrlx22WWMHz8+2APx448/0qNHDyZNmkTXrl159dVX8Xq9TJs2jR49etCuXTuuuOKKkGkqLpeLxx9/nK5du5KamsqCBQto27Ytf/75Z6mvd6rFixdzww03MH36dFJSUujZsydz584N7v/nP//J2LFjGTx4MJdccgk7duwo9fq//vorN998M506daJPnz4sXLgw+F4LDuH86KOP6NOnDx06dGDgwIGsXbsWKDyEMzs7m/Hjx9O9e3dSUlJ45JFHyMrKCvn85s2bR48ePbjkkksYM2YMLperIj9iIc5IHo+HFStWcNNNNxEWFhay7+KLL2bOnDkkJSUBgV7YO++8ky5dutChQwdGjBjB//73P6Do9grgtddeo1u3blx66aUVHu1jNpuxWq3AmdHuTJ8+nUGDBvGXv/yFw4cPM3r0aLp06cKdd97JF198QZcuXRgyZAh9+vTh3XffDZ73ww8/MHz48OBnW9CmTZtISUlB1wPpj6ZppKSksGHDhuD+iy66KHh8s2bNaN68eXC/EOUliXY9sWzZMnr06IHZbKZPnz4sX7683HN5tm/fTvv27YMNVEHnnHMO5557bpmv5fF4eOutt/jjjz+48sorAdiyZQvt2rULJt6n6tq1Kxs3bqz0WIQQ1aO4digtLY0NGzaEzLdbtWoVaWlpADz22GNkZmby0Ucf8cYbb7B79+6QoZpHjhzBbrfzySefMGTIEN58803WrFnDK6+8wqpVqxgyZAiTJ0/myJEjAEyePJn169fz1ltvMX36dN566y38fn/weqW93ql+/fVXtm7dyty5c7n//vuZPHkyX3/9dXD/p59+yt/+9jfefPNN2rRpU+L1MzIyuPXWW2nVqhWffPIJDz30EBMmTCg0PPLXX3/lmWeeYdy4caxatYoBAwbw4IMPkpOTUyi+v//97/z222+8/vrrvPfee+zevTtkOGR6ejorV65k9uzZPP3003zxxRcVehgrxJlq3759OBwOOnToUOT+Sy+9lIiICJRS3HvvvZx11lksXbqUuXPnYhgGzz77bPDYU9ur/KlvU6ZM4d133w12KJSV3+/np59+YtmyZfTu3Tu4vS63OxkZGXz++efcf//9OBwORo0aRcOGDVmwYAEpKSmMGzeO5ORkdF1nxIgRrFmzJnjd++67j7/+9a9F3kseO3aMxo0bh2xLSEgI/r/h6NGjJe4XorxKnnAhzghHjhzhl19+4bnnngPgyiuv5O233+brr7+mb9++Zb5Obm4uDRo0qFAMR48epUuXLsF/u1wuWrVqxfTp04Pbs7OzSUhIKPYasbGxZGZmnnYsQojqV1o71KpVK/7zn/9w0003sX//fn777TdmzJjBvn37+M9//sO6deuIi4sDYNq0afTu3ZtDhw4Fr3/nnXfSsmVLAJKSknj66afp3LkzAKNHj2bGjBns3r2bqKgolixZwuuvvx5se5544gnuvPNOgFJfr1mzZkW+v2nTptGwYUOSkpL46aefmDdvHj179gTgggsuoF+/fmW6/po1a7DZbDz11FOYTCZatWpFVlYWhmGEvN6BAwcAaN68Oc2bN+fuu++mQ4cOWCyWkOO2b9/OTz/9xMqVK2ndujUQGEFw9dVXB3vZfD4fjz32GMnJyZx//vmkpqayZcuWcvx0hTiz5SeS0dHRJR7ndDq5/vrrGTlyJDabDYAhQ4bwxhtvhBxXsL2aP38+o0aN4oorrgACo/IGDhxY4uu8/fbbvP/++wC43W5MJhPXXHMNd9xxR/CYutzufP311/Tq1YuIiAhmzJiBrutMmjQJXdc577zzmD9/Pm3btgWgVatWIf8vKInT6Qz2+uezWq14PB4gcG9a0n4hyksS7Xpg5cqVmEym4E1fp06daNy4MUuWLKFv376YzWaUUkWeaxhGsABGfHx8kU8ty6Jhw4Z89NFHKKXYsmULkydPZtiwYVx99dXBY2JjYzl+/Hix1zh69Cjx8fGnHYsQovqV1g4NGDAgmGivWrWKLl260KxZM9auXYtSKngTWtCePXuCo1qaN28e3N63b1++//57pk6dyq5du4LFEQ3DYNeuXXi93pCeqYIPAXfu3Fni6xWVaJ999tk0bNgw+O/27dvz4YcfBv9dsDhQadf/448/OP/880N6Y26++WaAkCrEl19+OV27dmXw4MEkJSXRu3dvrr/+eiIiIkKuuWvXLmw2W/BmFwI3prGxsezcuTPYpubf9ANERUWVWmFYiPok/3uSnZ1d4nGRkZGMHDmSpUuXsnXr1mD7k5/c5ivYXu3cuZPRo0cH/52UlFRoePqphg0bxq233gqAxWKhYcOGhRLEutzu7Ny5kzZt2gCwYsUKhg0bFjKCMTw8nAsuuAAAu91e6PWLExYWVihp9ng8hIeHl2m/EOUliXY9kD8885JLLgluMwyDr776ioyMDGJiYoqcf6iUIjc3l5iYGAA6dOjA7NmzUUqhaVrIsV999RVLly7l2WefLfRkE0DXdRITE4HA0G5d13n44Ydp1qwZ/fv3B6Bz587Mnj0bj8dT6H8YSim2bdtG9+7dTzsWIUT1K60dSktLY9asWWRmZrJq1Squu+46IDAsMjIykiVLlhS6ZqNGjYI9IAVvTKdPn868efMYOnQo1157LU899VRwSGX+g8OCDxcL/r201yvKqdV4/X5/yE1hwfastOvnz3csTUREBO+99x7r169n7dq1rFq1ig8//JCPPvqIqKioIl/71BgL9lad2lYW9/BViPqoZcuWxMXFsWXLFjp27Fho/4MPPsg111xDt27duP7664mNjaVv375cc8017Nq1q1A18FMT6VO/b8VNocsXExMTvKcqTl1ud3JycoIPCvbt28d5550XPMZut7N//37atWsHwLfffkunTp3KFH+TJk04duxYyLbjx48H2/YmTZoU6vApuF+I8pI52me4PXv2sHXrVsaNG8eSJUuCf9544w28Xi8rVqwgOTmZPXv2BIdl59u+fTsulyv41PCqq67CbrezdOnSkOMMw+Dtt98mKyurzIltWloaV1xxBZMm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\n",
      "text/plain": [
       "<Figure size 1080x288 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "get_performances_plots(performances_df_prequential, \n",
    "                       performance_metrics_list=['AUC ROC', 'Average precision', 'Card Precision@100'], \n",
    "                       expe_type_list=['Test','Validation'], expe_type_color_list=['#008000','#FF0000'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The resulting plot shows a better agreement between the validation and test performances for the three performance metrics. The AUC ROC remains problematic, since it would select a depth of 50 as the best performance for the validation set, whereas optimal depths are in the range 3 to 6. The AP and CP@100 however follow similar trends for the validation and test set. \n",
    "\n",
    "The prequential validation offers the most robust way to perform model selection and will be the preferred approach in the rest of this book. It should however be noted that it is computationally intensive since it requires the creation of several prediction models for each tested model parameter."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "(Sklearn_Validation_Pipeline)=\n",
    "## Integration in Scikit-learn \n",
    "\n",
    "Scikit-learn (also known as *sklearn*) is the reference library for machine learning in Python. Since validation and model selection are essential steps in the design of machine learning prediction models, sklearn provides [a wide range of techniques for assessing and validating prediction models](https://scikit-learn.org/stable/model_selection.html).\n",
    "\n",
    "Sklearn however offers few possibilities for performing validation on sequential data. In particular, the prequential validation presented in the previous section, and the Card Precision metric are not provided.\n",
    "\n",
    "This last section aims at bridging this gap, by adding both prequential validation and the CP metric to the validation and model selection pipelines provided by sklearn. The benefits will be to gain access to high-level functions from the sklearn library. These include, among others, the ability to \n",
    "\n",
    "* easily parallelize code execution\n",
    "* rely on sklearn *pipelines* for data transformation\n",
    "* rely on different strategies for hyperparameter tuning (exhaustive search, random search, ...). \n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Prequential splitting\n",
    "\n",
    "Scikit-learn provides seven different strategies for splitting data for validation: `KFold`, `GroupKFold`, `ShuffleSplit`, `StratifiedKFold`, `GroupShuffleSplit`, `StratifiedShuffleSplit`, and `TimeSeriesSplit`. A visualization of these splitting strategies is provided [here](https://scikit-learn.org/stable/auto_examples/model_selection/plot_cv_indices.html). None of these allows the prequential splitting of data illustrated in Fig. 5.\n",
    "\n",
    "Let us define a `prequentialSplit` function, that returns the indices of the training and test sets for each of the folds of a prequential split. \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [],
   "source": [
    "def prequentialSplit(transactions_df,\n",
    "                     start_date_training, \n",
    "                     n_folds=4, \n",
    "                     delta_train=7,\n",
    "                     delta_delay=7,\n",
    "                     delta_assessment=7):\n",
    "    \n",
    "    prequential_split_indices=[]\n",
    "        \n",
    "    # For each fold\n",
    "    for fold in range(n_folds):\n",
    "        \n",
    "        # Shift back start date for training by the fold index times the assessment period (delta_assessment)\n",
    "        # (See Fig. 5)\n",
    "        start_date_training_fold = start_date_training-datetime.timedelta(days=fold*delta_assessment)\n",
    "        \n",
    "        # Get the training and test (assessment) sets\n",
    "        (train_df, test_df)=get_train_test_set(transactions_df,\n",
    "                                               start_date_training=start_date_training_fold,\n",
    "                                               delta_train=delta_train,delta_delay=delta_delay,delta_test=delta_assessment)\n",
    "    \n",
    "        # Get the indices from the two sets, and add them to the list of prequential splits\n",
    "        indices_train=list(train_df.index)\n",
    "        indices_test=list(test_df.index)\n",
    "        \n",
    "        prequential_split_indices.append((indices_train,indices_test))\n",
    "    \n",
    "    return prequential_split_indices"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Card Precision top-k\n",
    "\n",
    "Custom metrics can be implemented in sklearn thanks to the [`make_scorer`](https://scikit-learn.org/stable/modules/generated/sklearn.metrics.make_scorer.html) factory function. The computation of the Card Precision top-k requires the scoring function to be aware of the customer ID and the day of the transation (see Section [Precision Top K Metrics](Precision_Top_K_Metrics)). This is done by passing the `transactions_df` DataFrame as an argument to the function. More details on the design of custom scoring functions can be found [here](https://scikit-learn.org/stable/modules/model_evaluation.html#scoring).\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [],
   "source": [
    "def card_precision_top_k_custom(y_true, y_pred, top_k, transactions_df):\n",
    "    \n",
    "    # Let us create a predictions_df DataFrame, that contains all transactions matching the indices of the current fold\n",
    "    # (indices of the y_true vector)\n",
    "    predictions_df=transactions_df.iloc[y_true.index.values].copy()\n",
    "    predictions_df['predictions']=y_pred\n",
    "    \n",
    "    # Compute the CP@k using the function implemented in Chapter 4, Section 4.2\n",
    "    nb_compromised_cards_per_day,card_precision_top_k_per_day_list,mean_card_precision_top_k=\\\n",
    "        card_precision_top_k(predictions_df, top_k)\n",
    "    \n",
    "    # Return the mean_card_precision_top_k\n",
    "    return mean_card_precision_top_k\n",
    "\n",
    "# Only keep columns that are needed as argument to the custom scoring function\n",
    "# (in order to reduce the serialization time of transaction dataset)\n",
    "transactions_df_scorer=transactions_df[['CUSTOMER_ID', 'TX_FRAUD','TX_TIME_DAYS']]\n",
    "\n",
    "# Make scorer using card_precision_top_k_custom\n",
    "card_precision_top_100 = sklearn.metrics.make_scorer(card_precision_top_k_custom, \n",
    "                                                     needs_proba=True, \n",
    "                                                     top_k=100, \n",
    "                                                     transactions_df=transactions_df_scorer)\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Grid search\n",
    "\n",
    "Sklearn allows to automate the fitting and assessment of models with different hyperparameters by means of the [GridSearchCV function](https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html). \n",
    "\n",
    "Its main parameters are\n",
    "\n",
    "* `estimator`: The estimator to use, which will be a decision tree in the following example.\n",
    "* `param_grid`: The set of hyperparameters for the estimator. We will vary the decision tree depth (`max_depth`) parameter, and set the random state (`random_state`) for reproduciblity.\n",
    "* `scoring`: The scoring functions to use. We will use the AUC ROC, Average Precision, and CP@100.   \n",
    "* `n_jobs`: The number of cores to use. We will set it to -1, that is, to using all the available cores. \n",
    "* `refit`: Whether the model should be fitted with all data after the cross validation. This will be set to false, since we only require the results of the cross validation.\n",
    "* `cv`: The cross-validation splitting strategy. The prequential validation will be used, by passing the indices returned by the `prequentialSplit` function.\n",
    "\n",
    "Let us set these parameters, and instantiate a `GridSearchCV` object."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Estimator to use\n",
    "classifier = sklearn.tree.DecisionTreeClassifier()\n",
    "\n",
    "# Hyperparameters to test\n",
    "parameters = {'clf__max_depth':[2,4], 'clf__random_state':[0]}\n",
    "\n",
    "# Scoring functions. AUC ROC and Average Precision are readily available from sklearn \n",
    "# with `auc_roc` and `average_precision`. Card Precision@100 was implemented with the make_scorer factory function. \n",
    "scoring = {'roc_auc':'roc_auc',\n",
    "           'average_precision': 'average_precision',\n",
    "           'card_precision@100': card_precision_top_100\n",
    "           }\n",
    "\n",
    "# A pipeline is created to scale data before fitting a model\n",
    "estimators = [('scaler', sklearn.preprocessing.StandardScaler()), ('clf', classifier)]\n",
    "pipe = sklearn.pipeline.Pipeline(estimators)\n",
    "\n",
    "# Indices for the prequential validation are obtained with the prequentialSplit function\n",
    "prequential_split_indices = prequentialSplit(transactions_df,\n",
    "                                             start_date_training_with_valid, \n",
    "                                             n_folds=n_folds,\n",
    "                                             delta_train=delta_train, \n",
    "                                             delta_delay=delta_delay, \n",
    "                                             delta_assessment=delta_valid)\n",
    "\n",
    "# Let us instantiate the GridSearchCV\n",
    "grid_search = sklearn.model_selection.GridSearchCV(pipe, param_grid=parameters, scoring=scoring, \\\n",
    "                                                   cv=prequential_split_indices, refit=False, n_jobs=-1,verbose=0)\n",
    "\n",
    "# And select the input features, and output feature\n",
    "X=transactions_df[input_features]\n",
    "y=transactions_df[output_feature]\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The fitting and assessment is performed by calling the `fit` function of the `grid_search` object."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "CPU times: user 152 ms, sys: 259 ms, total: 411 ms\n",
      "Wall time: 6.51 s\n",
      "Finished CV fitting\n"
     ]
    }
   ],
   "source": [
    "%time grid_search.fit(X, y)\n",
    "\n",
    "print(\"Finished CV fitting\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The results of the cross validation can be retrieved with the `cv_results_` attribute. It contains the scoring for each fold and scoring metrics, together with statistics on the execution times. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "metadata": {
    "tags": [
     "output_scroll"
    ]
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'mean_fit_time': array([1.05854368, 1.27579147]),\n",
       " 'std_fit_time': array([0.0081484 , 0.01675179]),\n",
       " 'mean_score_time': array([0.29740781, 0.21103078]),\n",
       " 'std_score_time': array([0.00725061, 0.00444517]),\n",
       " 'param_clf__max_depth': masked_array(data=[2, 4],\n",
       "              mask=[False, False],\n",
       "        fill_value='?',\n",
       "             dtype=object),\n",
       " 'param_clf__random_state': masked_array(data=[0, 0],\n",
       "              mask=[False, False],\n",
       "        fill_value='?',\n",
       "             dtype=object),\n",
       " 'params': [{'clf__max_depth': 2, 'clf__random_state': 0},\n",
       "  {'clf__max_depth': 4, 'clf__random_state': 0}],\n",
       " 'split0_test_roc_auc': array([0.7750121 , 0.78393251]),\n",
       " 'split1_test_roc_auc': array([0.80873906, 0.82871798]),\n",
       " 'split2_test_roc_auc': array([0.79140481, 0.78643512]),\n",
       " 'split3_test_roc_auc': array([0.78798838, 0.80367453]),\n",
       " 'mean_test_roc_auc': array([0.79078609, 0.80069003]),\n",
       " 'std_test_roc_auc': array([0.01203472, 0.01787799]),\n",
       " 'rank_test_roc_auc': array([2, 1], dtype=int32),\n",
       " 'split0_test_average_precision': array([0.5235482 , 0.53514015]),\n",
       " 'split1_test_average_precision': array([0.58466274, 0.60015739]),\n",
       " 'split2_test_average_precision': array([0.54253116, 0.50175204]),\n",
       " 'split3_test_average_precision': array([0.5483265 , 0.57948508]),\n",
       " 'mean_test_average_precision': array([0.54976715, 0.55413367]),\n",
       " 'std_test_average_precision': array([0.02213352, 0.03829317]),\n",
       " 'rank_test_average_precision': array([2, 1], dtype=int32),\n",
       " 'split0_test_card_precision@100': array([0.24285714, 0.24857143]),\n",
       " 'split1_test_card_precision@100': array([0.24285714, 0.25714286]),\n",
       " 'split2_test_card_precision@100': array([0.26285714, 0.26428571]),\n",
       " 'split3_test_card_precision@100': array([0.27714286, 0.28714286]),\n",
       " 'mean_test_card_precision@100': array([0.25642857, 0.26428571]),\n",
       " 'std_test_card_precision@100': array([0.01448081, 0.01432138]),\n",
       " 'rank_test_card_precision@100': array([2, 1], dtype=int32)}"
      ]
     },
     "execution_count": 51,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "grid_search.cv_results_"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us rearrange these results in a more readable format:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [],
   "source": [
    "performances_df=pd.DataFrame()\n",
    "\n",
    "expe_type=\"Validation\"\n",
    "\n",
    "performance_metrics_list_grid=['roc_auc', 'average_precision', 'card_precision@100']\n",
    "performance_metrics_list=['AUC ROC', 'Average precision', 'Card Precision@100']\n",
    "\n",
    "\n",
    "for i in range(len(performance_metrics_list_grid)):\n",
    "    performances_df[performance_metrics_list[i]+' '+expe_type]=grid_search.cv_results_['mean_test_'+performance_metrics_list_grid[i]]\n",
    "    performances_df[performance_metrics_list[i]+' '+expe_type+' Std']=grid_search.cv_results_['std_test_'+performance_metrics_list_grid[i]]\n",
    "\n",
    "performances_df['Execution time']=grid_search.cv_results_['mean_fit_time']\n",
    "\n",
    "performances_df['Parameters']=list(grid_search.cv_results_['params'])\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>AUC ROC Validation Std</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Average precision Validation Std</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>Card Precision@100 Validation Std</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>Parameters</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.790786</td>\n",
       "      <td>0.012035</td>\n",
       "      <td>0.549767</td>\n",
       "      <td>0.022134</td>\n",
       "      <td>0.256429</td>\n",
       "      <td>0.014481</td>\n",
       "      <td>1.058544</td>\n",
       "      <td>{'clf__max_depth': 2, 'clf__random_state': 0}</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.800690</td>\n",
       "      <td>0.017878</td>\n",
       "      <td>0.554134</td>\n",
       "      <td>0.038293</td>\n",
       "      <td>0.264286</td>\n",
       "      <td>0.014321</td>\n",
       "      <td>1.275791</td>\n",
       "      <td>{'clf__max_depth': 4, 'clf__random_state': 0}</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   AUC ROC Validation  AUC ROC Validation Std  Average precision Validation  \\\n",
       "0            0.790786                0.012035                      0.549767   \n",
       "1            0.800690                0.017878                      0.554134   \n",
       "\n",
       "   Average precision Validation Std  Card Precision@100 Validation  \\\n",
       "0                          0.022134                       0.256429   \n",
       "1                          0.038293                       0.264286   \n",
       "\n",
       "   Card Precision@100 Validation Std  Execution time  \\\n",
       "0                           0.014481        1.058544   \n",
       "1                           0.014321        1.275791   \n",
       "\n",
       "                                      Parameters  \n",
       "0  {'clf__max_depth': 2, 'clf__random_state': 0}  \n",
       "1  {'clf__max_depth': 4, 'clf__random_state': 0}  "
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Integration\n",
    "\n",
    "The same results as in the [previous section](Prequential_validation) can be obtained using `GridSearchCV`. Let us first define a function `prequential_grid_search`, that implements the grid search as above: "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [],
   "source": [
    "def prequential_grid_search(transactions_df, \n",
    "                            classifier, \n",
    "                            input_features, output_feature, \n",
    "                            parameters, scoring, \n",
    "                            start_date_training, \n",
    "                            n_folds=4,\n",
    "                            expe_type='Test',\n",
    "                            delta_train=7, \n",
    "                            delta_delay=7, \n",
    "                            delta_assessment=7,\n",
    "                            performance_metrics_list_grid=['roc_auc'],\n",
    "                            performance_metrics_list=['AUC ROC'],\n",
    "                            n_jobs=-1):\n",
    "    \n",
    "    estimators = [('scaler', sklearn.preprocessing.StandardScaler()), ('clf', classifier)]\n",
    "    pipe = sklearn.pipeline.Pipeline(estimators)\n",
    "    \n",
    "    prequential_split_indices=prequentialSplit(transactions_df,\n",
    "                                               start_date_training=start_date_training, \n",
    "                                               n_folds=n_folds, \n",
    "                                               delta_train=delta_train, \n",
    "                                               delta_delay=delta_delay, \n",
    "                                               delta_assessment=delta_assessment)\n",
    "    \n",
    "    grid_search = sklearn.model_selection.GridSearchCV(pipe, parameters, scoring=scoring, cv=prequential_split_indices, refit=False, n_jobs=n_jobs)\n",
    "    \n",
    "    X=transactions_df[input_features]\n",
    "    y=transactions_df[output_feature]\n",
    "\n",
    "    grid_search.fit(X, y)\n",
    "    \n",
    "    performances_df=pd.DataFrame()\n",
    "    \n",
    "    for i in range(len(performance_metrics_list_grid)):\n",
    "        performances_df[performance_metrics_list[i]+' '+expe_type]=grid_search.cv_results_['mean_test_'+performance_metrics_list_grid[i]]\n",
    "        performances_df[performance_metrics_list[i]+' '+expe_type+' Std']=grid_search.cv_results_['std_test_'+performance_metrics_list_grid[i]]\n",
    "\n",
    "    performances_df['Parameters']=grid_search.cv_results_['params']\n",
    "    performances_df['Execution time']=grid_search.cv_results_['mean_fit_time']\n",
    "    \n",
    "    return performances_df\n",
    "\n",
    "        "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can estimate the validation performances of a decision tree model for varying depth by setting `start_date_training` to `start_date_training_with_valid`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Validation: Total execution time: 21.65s\n"
     ]
    }
   ],
   "source": [
    "start_time=time.time()\n",
    "\n",
    "classifier = sklearn.tree.DecisionTreeClassifier()\n",
    "\n",
    "parameters = {'clf__max_depth':[2,3,4,5,6,7,8,9,10,20,50], 'clf__random_state':[0]}\n",
    "\n",
    "scoring = {'roc_auc':'roc_auc',\n",
    "           'average_precision': 'average_precision',\n",
    "           'card_precision@100': card_precision_top_100,\n",
    "           }\n",
    "\n",
    "performances_df_validation=prequential_grid_search(\n",
    "    transactions_df, classifier, \n",
    "    input_features, output_feature,\n",
    "    parameters, scoring, \n",
    "    start_date_training=start_date_training_with_valid,\n",
    "    n_folds=n_folds,\n",
    "    expe_type='Validation',\n",
    "    delta_train=delta_train, \n",
    "    delta_delay=delta_delay, \n",
    "    delta_assessment=delta_valid,\n",
    "    performance_metrics_list_grid=performance_metrics_list_grid,\n",
    "    performance_metrics_list=performance_metrics_list)\n",
    "\n",
    "print(\"Validation: Total execution time: \"+str(round(time.time()-start_time,2))+\"s\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "And the test performances by setting `start_date_training` accordingly."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Test: Total execution time: 21.02s\n"
     ]
    }
   ],
   "source": [
    "start_time=time.time()\n",
    "\n",
    "performances_df_test=prequential_grid_search(\n",
    "    transactions_df, classifier, \n",
    "    input_features, output_feature,\n",
    "    parameters, scoring, \n",
    "    start_date_training=start_date_training+datetime.timedelta(days=(n_folds-1)*delta_test),\n",
    "    n_folds=n_folds,\n",
    "    expe_type='Test',\n",
    "    delta_train=delta_train, \n",
    "    delta_delay=delta_delay, \n",
    "    delta_assessment=delta_test,\n",
    "    performance_metrics_list_grid=performance_metrics_list_grid,\n",
    "    performance_metrics_list=performance_metrics_list)\n",
    "\n",
    "print(\"Test: Total execution time: \"+str(round(time.time()-start_time,2))+\"s\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us concatenate the validation and test performances in a single DataFrame."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [],
   "source": [
    "performances_df_validation.drop(columns=['Parameters','Execution time'], inplace=True)\n",
    "performances_df=pd.concat([performances_df_test,performances_df_validation],axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Use the max_depth as the label for plotting\n",
    "parameters_dict=dict(performances_df['Parameters'])\n",
    "max_depth=[parameters_dict[i]['clf__max_depth'] for i in range(len(parameters_dict))]\n",
    "performances_df['Parameters summary']=max_depth"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {
    "tags": [
     "output_scroll"
    ]
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>AUC ROC Test</th>\n",
       "      <th>AUC ROC Test Std</th>\n",
       "      <th>Average precision Test</th>\n",
       "      <th>Average precision Test Std</th>\n",
       "      <th>Card Precision@100 Test</th>\n",
       "      <th>Card Precision@100 Test Std</th>\n",
       "      <th>Parameters</th>\n",
       "      <th>Execution time</th>\n",
       "      <th>AUC ROC Validation</th>\n",
       "      <th>AUC ROC Validation Std</th>\n",
       "      <th>Average precision Validation</th>\n",
       "      <th>Average precision Validation Std</th>\n",
       "      <th>Card Precision@100 Validation</th>\n",
       "      <th>Card Precision@100 Validation Std</th>\n",
       "      <th>Parameters summary</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0.791909</td>\n",
       "      <td>0.017769</td>\n",
       "      <td>0.541761</td>\n",
       "      <td>0.031476</td>\n",
       "      <td>0.265000</td>\n",
       "      <td>0.019756</td>\n",
       "      <td>{'clf__max_depth': 2, 'clf__random_state': 0}</td>\n",
       "      <td>0.961201</td>\n",
       "      <td>0.790786</td>\n",
       "      <td>0.012035</td>\n",
       "      <td>0.549767</td>\n",
       "      <td>0.022134</td>\n",
       "      <td>0.256429</td>\n",
       "      <td>0.014481</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0.809012</td>\n",
       "      <td>0.009125</td>\n",
       "      <td>0.578885</td>\n",
       "      <td>0.014434</td>\n",
       "      <td>0.281429</td>\n",
       "      <td>0.015940</td>\n",
       "      <td>{'clf__max_depth': 3, 'clf__random_state': 0}</td>\n",
       "      <td>0.974105</td>\n",
       "      <td>0.802717</td>\n",
       "      <td>0.017607</td>\n",
       "      <td>0.573414</td>\n",
       "      <td>0.027186</td>\n",
       "      <td>0.267143</td>\n",
       "      <td>0.016067</td>\n",
       "      <td>3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0.812555</td>\n",
       "      <td>0.010319</td>\n",
       "      <td>0.601088</td>\n",
       "      <td>0.020216</td>\n",
       "      <td>0.282500</td>\n",
       "      <td>0.015199</td>\n",
       "      <td>{'clf__max_depth': 4, 'clf__random_state': 0}</td>\n",
       "      <td>1.052066</td>\n",
       "      <td>0.800690</td>\n",
       "      <td>0.017878</td>\n",
       "      <td>0.554134</td>\n",
       "      <td>0.038293</td>\n",
       "      <td>0.264286</td>\n",
       "      <td>0.014321</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.810138</td>\n",
       "      <td>0.008586</td>\n",
       "      <td>0.600306</td>\n",
       "      <td>0.016797</td>\n",
       "      <td>0.284286</td>\n",
       "      <td>0.004286</td>\n",
       "      <td>{'clf__max_depth': 5, 'clf__random_state': 0}</td>\n",
       "      <td>1.283144</td>\n",
       "      <td>0.804218</td>\n",
       "      <td>0.016505</td>\n",
       "      <td>0.546094</td>\n",
       "      <td>0.042197</td>\n",
       "      <td>0.267857</td>\n",
       "      <td>0.013869</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.804437</td>\n",
       "      <td>0.007974</td>\n",
       "      <td>0.585132</td>\n",
       "      <td>0.005053</td>\n",
       "      <td>0.281429</td>\n",
       "      <td>0.007626</td>\n",
       "      <td>{'clf__max_depth': 6, 'clf__random_state': 0}</td>\n",
       "      <td>1.634223</td>\n",
       "      <td>0.798603</td>\n",
       "      <td>0.024225</td>\n",
       "      <td>0.537006</td>\n",
       "      <td>0.037056</td>\n",
       "      <td>0.264643</td>\n",
       "      <td>0.008474</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>0.782710</td>\n",
       "      <td>0.012483</td>\n",
       "      <td>0.554860</td>\n",
       "      <td>0.011771</td>\n",
       "      <td>0.268929</td>\n",
       "      <td>0.009813</td>\n",
       "      <td>{'clf__max_depth': 7, 'clf__random_state': 0}</td>\n",
       "      <td>1.494083</td>\n",
       "      <td>0.795636</td>\n",
       "      <td>0.023144</td>\n",
       "      <td>0.530609</td>\n",
       "      <td>0.040323</td>\n",
       "      <td>0.262500</td>\n",
       "      <td>0.006804</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.774783</td>\n",
       "      <td>0.014568</td>\n",
       "      <td>0.544933</td>\n",
       "      <td>0.003392</td>\n",
       "      <td>0.263571</td>\n",
       "      <td>0.007593</td>\n",
       "      <td>{'clf__max_depth': 8, 'clf__random_state': 0}</td>\n",
       "      <td>1.539149</td>\n",
       "      <td>0.795142</td>\n",
       "      <td>0.023081</td>\n",
       "      <td>0.516246</td>\n",
       "      <td>0.033545</td>\n",
       "      <td>0.260714</td>\n",
       "      <td>0.009715</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>0.761763</td>\n",
       "      <td>0.012098</td>\n",
       "      <td>0.520208</td>\n",
       "      <td>0.012309</td>\n",
       "      <td>0.258571</td>\n",
       "      <td>0.009949</td>\n",
       "      <td>{'clf__max_depth': 9, 'clf__random_state': 0}</td>\n",
       "      <td>1.371046</td>\n",
       "      <td>0.785849</td>\n",
       "      <td>0.026249</td>\n",
       "      <td>0.505189</td>\n",
       "      <td>0.040393</td>\n",
       "      <td>0.260357</td>\n",
       "      <td>0.009813</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>0.758138</td>\n",
       "      <td>0.011140</td>\n",
       "      <td>0.504909</td>\n",
       "      <td>0.013154</td>\n",
       "      <td>0.257500</td>\n",
       "      <td>0.010467</td>\n",
       "      <td>{'clf__max_depth': 10, 'clf__random_state': 0}</td>\n",
       "      <td>1.442724</td>\n",
       "      <td>0.786784</td>\n",
       "      <td>0.031165</td>\n",
       "      <td>0.493543</td>\n",
       "      <td>0.048307</td>\n",
       "      <td>0.257143</td>\n",
       "      <td>0.009949</td>\n",
       "      <td>10</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>0.754024</td>\n",
       "      <td>0.009848</td>\n",
       "      <td>0.439422</td>\n",
       "      <td>0.034828</td>\n",
       "      <td>0.261071</td>\n",
       "      <td>0.014335</td>\n",
       "      <td>{'clf__max_depth': 20, 'clf__random_state': 0}</td>\n",
       "      <td>2.176944</td>\n",
       "      <td>0.780408</td>\n",
       "      <td>0.022168</td>\n",
       "      <td>0.450980</td>\n",
       "      <td>0.031413</td>\n",
       "      <td>0.264286</td>\n",
       "      <td>0.007890</td>\n",
       "      <td>20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>0.797221</td>\n",
       "      <td>0.005425</td>\n",
       "      <td>0.334055</td>\n",
       "      <td>0.020390</td>\n",
       "      <td>0.258214</td>\n",
       "      <td>0.012095</td>\n",
       "      <td>{'clf__max_depth': 50, 'clf__random_state': 0}</td>\n",
       "      <td>2.687324</td>\n",
       "      <td>0.822564</td>\n",
       "      <td>0.013407</td>\n",
       "      <td>0.341818</td>\n",
       "      <td>0.026227</td>\n",
       "      <td>0.265714</td>\n",
       "      <td>0.008512</td>\n",
       "      <td>50</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    AUC ROC Test  AUC ROC Test Std  Average precision Test  \\\n",
       "0       0.791909          0.017769                0.541761   \n",
       "1       0.809012          0.009125                0.578885   \n",
       "2       0.812555          0.010319                0.601088   \n",
       "3       0.810138          0.008586                0.600306   \n",
       "4       0.804437          0.007974                0.585132   \n",
       "5       0.782710          0.012483                0.554860   \n",
       "6       0.774783          0.014568                0.544933   \n",
       "7       0.761763          0.012098                0.520208   \n",
       "8       0.758138          0.011140                0.504909   \n",
       "9       0.754024          0.009848                0.439422   \n",
       "10      0.797221          0.005425                0.334055   \n",
       "\n",
       "    Average precision Test Std  Card Precision@100 Test  \\\n",
       "0                     0.031476                 0.265000   \n",
       "1                     0.014434                 0.281429   \n",
       "2                     0.020216                 0.282500   \n",
       "3                     0.016797                 0.284286   \n",
       "4                     0.005053                 0.281429   \n",
       "5                     0.011771                 0.268929   \n",
       "6                     0.003392                 0.263571   \n",
       "7                     0.012309                 0.258571   \n",
       "8                     0.013154                 0.257500   \n",
       "9                     0.034828                 0.261071   \n",
       "10                    0.020390                 0.258214   \n",
       "\n",
       "    Card Precision@100 Test Std  \\\n",
       "0                      0.019756   \n",
       "1                      0.015940   \n",
       "2                      0.015199   \n",
       "3                      0.004286   \n",
       "4                      0.007626   \n",
       "5                      0.009813   \n",
       "6                      0.007593   \n",
       "7                      0.009949   \n",
       "8                      0.010467   \n",
       "9                      0.014335   \n",
       "10                     0.012095   \n",
       "\n",
       "                                        Parameters  Execution time  \\\n",
       "0    {'clf__max_depth': 2, 'clf__random_state': 0}        0.961201   \n",
       "1    {'clf__max_depth': 3, 'clf__random_state': 0}        0.974105   \n",
       "2    {'clf__max_depth': 4, 'clf__random_state': 0}        1.052066   \n",
       "3    {'clf__max_depth': 5, 'clf__random_state': 0}        1.283144   \n",
       "4    {'clf__max_depth': 6, 'clf__random_state': 0}        1.634223   \n",
       "5    {'clf__max_depth': 7, 'clf__random_state': 0}        1.494083   \n",
       "6    {'clf__max_depth': 8, 'clf__random_state': 0}        1.539149   \n",
       "7    {'clf__max_depth': 9, 'clf__random_state': 0}        1.371046   \n",
       "8   {'clf__max_depth': 10, 'clf__random_state': 0}        1.442724   \n",
       "9   {'clf__max_depth': 20, 'clf__random_state': 0}        2.176944   \n",
       "10  {'clf__max_depth': 50, 'clf__random_state': 0}        2.687324   \n",
       "\n",
       "    AUC ROC Validation  AUC ROC Validation Std  Average precision Validation  \\\n",
       "0             0.790786                0.012035                      0.549767   \n",
       "1             0.802717                0.017607                      0.573414   \n",
       "2             0.800690                0.017878                      0.554134   \n",
       "3             0.804218                0.016505                      0.546094   \n",
       "4             0.798603                0.024225                      0.537006   \n",
       "5             0.795636                0.023144                      0.530609   \n",
       "6             0.795142                0.023081                      0.516246   \n",
       "7             0.785849                0.026249                      0.505189   \n",
       "8             0.786784                0.031165                      0.493543   \n",
       "9             0.780408                0.022168                      0.450980   \n",
       "10            0.822564                0.013407                      0.341818   \n",
       "\n",
       "    Average precision Validation Std  Card Precision@100 Validation  \\\n",
       "0                           0.022134                       0.256429   \n",
       "1                           0.027186                       0.267143   \n",
       "2                           0.038293                       0.264286   \n",
       "3                           0.042197                       0.267857   \n",
       "4                           0.037056                       0.264643   \n",
       "5                           0.040323                       0.262500   \n",
       "6                           0.033545                       0.260714   \n",
       "7                           0.040393                       0.260357   \n",
       "8                           0.048307                       0.257143   \n",
       "9                           0.031413                       0.264286   \n",
       "10                          0.026227                       0.265714   \n",
       "\n",
       "    Card Precision@100 Validation Std  Parameters summary  \n",
       "0                            0.014481                   2  \n",
       "1                            0.016067                   3  \n",
       "2                            0.014321                   4  \n",
       "3                            0.013869                   5  \n",
       "4                            0.008474                   6  \n",
       "5                            0.006804                   7  \n",
       "6                            0.009715                   8  \n",
       "7                            0.009813                   9  \n",
       "8                            0.009949                  10  \n",
       "9                            0.007890                  20  \n",
       "10                           0.008512                  50  "
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "performances_df"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let us plot the performances for better visualization."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9oAAAEmCAYAAACd2OgMAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdd3hUVfrA8e+9U1ImlVAFiYIkSifYQANIESWCICKCsvYV3bUvsqgosIhgwwYoVmxLF6SILoL1JxaWruBKl076ZPrc8/tjyJAhPaSS9/M8PMJt884kc7zvPee8R1NKKYQQQgghhBBCCFEp9JoOQAghhBBCCCGEOJNIoi2EEEIIIYQQQlQiSbSFEEIIIYQQQohKJIm2EEIIIYQQQghRiSTRFkIIIYQQQgghKpEk2kIIIYQQQgghRCWSRLseWb58OcnJybzzzjsh21999VVGjBhR5Dk9evRg8eLFIdu++eYbbrnlFi688EIuueQS7r77bn799ddiX3fx4sUkJyeH/OnQoQP9+/fn448/LnT8unXruPXWW0lJSeHCCy9k1KhRfPXVV0Veu7yxCCFqVnHtkCjdjz/+SHJyMj6fr8Tj/vzzT5KTk9m7d281RSZE/ZCTk8O0adPo06cPnTp1on///syePRuv11tpr+Hz+UhOTubHH38scv+oUaNC7qfatm1Ljx49mDZtWqXGka+m253s7GxeffVVBg8eTJcuXejSpQtpaWm8+OKLHD16tNjzsrKy6N69e6F4tm/fzvDhw+nUqRPXXXcdmzdvDtm/cuVK+vXrR6dOnbjnnntIT0+v1Pcj6hdJtOuR5cuXk5iYyCeffFLha3zwwQfcd999pKamMm/ePN5//30SEhK46aabSkxwGzVqxHfffRf8s3TpUvr06cPEiRP56aefgsctWbKEO++8k06dOjF//nzmz59Pjx49uP/++3nrrbcqJRYhRM2pjHaovurSpQvfffcdZrO5xOOaNWvGd999R4sWLaopMiHOfFlZWQwbNoxNmzYxefJkli9fzsMPP8wHH3zAuHHjqjWWW265JXg/tXbtWiZMmMDcuXOZPXt2pb9WTbY7O3fuZODAgfz000/cddddzJs3jyVLlvDwww/zv//9j2uvvZZffvml0HnZ2dmMHj26UJLscDiC95iLFy+ma9eu3H333djtdgA2b97MP//5T+655x7mzZuH3W7n0UcfrbT3I+ohJeqFrKws1a5dO7V06VKVlJSktm3bFtz3yiuvqBtvvLHI81JTU9WiRYuUUkrt27dPtWvXTn3yySeFjhs1apS64447irzGokWLVGpqapH7+vXrp55++mmllFJHjx5VHTt2VP/+978LHbdixQrVtm1b9fvvv59WLEKImlNSOySEELXZ448/rtLS0pTL5QrZ/uOPP6qkpCS1cePGSnkdr9erkpKS1Lp164rcf/PNN6sXX3yx0Pbx48erQYMGVUoMtcHx48dV9+7d1Zw5c4o9ZuHChapbt27qyJEjwW0///yz6t27txo4cKBKSkpSe/bsCe5bsGCB6tWrl/L7/UoppQzDUP369VPz589XSik1ZswY9cgjjwSPP3jwYKFrCFEe0qNdT3z++edYrVYGDBjAOeecU2g4eFksX76cuLg4Bg0aVGjfpEmTePzxx8t9TavVislkAuDTTz8lKiqKYcOGFTouP+5FixZVWSxCiKpVXDv0/PPPF5q+Mnv2bIYOHQpAbm4uY8eOpWvXrlx22WWMHz8+2APx448/0qNHDyZNmkTXrl159dVX8Xq9TJs2jR49etCuXTuuuOKKkGkqLpeLxx9/nK5du5KamsqCBQto27Ytf/75Z6mvd6rFixdzww03MH36dFJSUujZsydz584N7v/nP//J2LFjGTx4MJdccgk7duwo9fq//vorN998M506daJPnz4sXLgw+F4LDuH86KOP6NOnDx06dGDgwIGsXbsWKDyEMzs7m/Hjx9O9e3dSUlJ45JFHyMrKCvn85s2bR48ePbjkkksYM2YMLperIj9iIc5IHo+HFStWcNNNNxEWFhay7+KLL2bOnDkkJSUBgV7YO++8ky5dutChQwdGjBjB//73P6Do9grgtddeo1u3blx66aUVHu1jNpuxWq3AmdHuTJ8+nUGDBvGXv/yFw4cPM3r0aLp06cKdd97JF198QZcuXRgyZAh9+vTh3XffDZ73ww8/MHz48OBnW9CmTZtISUlB1wPpj6ZppKSksGHDhuD+iy66KHh8s2bNaN68eXC/EOUliXY9sWzZMnr06IHZbKZPnz4sX7683HN5tm/fTvv27YMNVEHnnHMO5557bpmv5fF4eOutt/jjjz+48sorAdiyZQvt2rULJt6n6tq1Kxs3bqz0WIQQ1aO4digtLY0NGzaEzLdbtWoVaWlpADz22GNkZmby0Ucf8cYbb7B79+6QoZpHjhzBbrfzySefMGTIEN58803WrFnDK6+8wqpVqxgyZAiTJ0/myJEjAEyePJn169fz1ltvMX36dN566y38fn/weqW93ql+/fVXtm7dyty5c7n//vuZPHkyX3/9dXD/p59+yt/+9jfefPNN2rRpU+L1MzIyuPXWW2nVqhWffPIJDz30EBMmTCg0PPLXX3/lmWeeYdy4caxatYoBAwbw4IMPkpOTUyi+v//97/z222+8/vrrvPfee+zevTtkOGR6ejorV65k9uzZPP3003zxxRcVehgrxJlq3759OBwOOnToUOT+Sy+9lIiICJRS3HvvvZx11lksXbqUuXPnYhgGzz77bPDYU9ur/KlvU6ZM4d133w12KJSV3+/np59+YtmyZfTu3Tu4vS63OxkZGXz++efcf//9OBwORo0aRcOGDVmwYAEpKSmMGzeO5ORkdF1nxIgRrFmzJnjd++67j7/+9a9F3kseO3aMxo0bh2xLSEgI/r/h6NGjJe4XorxKnnAhzghHjhzhl19+4bnnngPgyiuv5O233+brr7+mb9++Zb5Obm4uDRo0qFAMR48epUuXLsF/u1wuWrVqxfTp04Pbs7OzSUhIKPYasbGxZGZmnnYsQojqV1o71KpVK/7zn/9w0003sX//fn777TdmzJjBvn37+M9//sO6deuIi4sDYNq0afTu3ZtDhw4Fr3/nnXfSsmVLAJKSknj66afp3LkzAKNHj2bGjBns3r2bqKgolixZwuuvvx5se5544gnuvPNOgFJfr1mzZkW+v2nTptGwYUOSkpL46aefmDdvHj179gTgggsuoF+/fmW6/po1a7DZbDz11FOYTCZatWpFVlYWhmGEvN6BAwcAaN68Oc2bN+fuu++mQ4cOWCyWkOO2b9/OTz/9xMqVK2ndujUQGEFw9dVXB3vZfD4fjz32GMnJyZx//vmkpqayZcuWcvx0hTiz5SeS0dHRJR7ndDq5/vrrGTlyJDabDYAhQ4bwxhtvhBxXsL2aP38+o0aN4oorrgACo/IGDhxY4uu8/fbbvP/++wC43W5MJhPXXHMNd9xxR/CYutzufP311/Tq1YuIiAhmzJiBrutMmjQJXdc577zzmD9/Pm3btgWgVatWIf8vKInT6Qz2+uezWq14PB4gcG9a0n4hyksS7Xpg5cqVmEym4E1fp06daNy4MUuWLKFv376YzWaUUkWeaxhGsABGfHx8kU8ty6Jhw4Z89NFHKKXYsmULkydPZtiwYVx99dXBY2JjYzl+/Hix1zh69Cjx8fGnHYsQovqV1g4NGDAgmGivWrWKLl260KxZM9auXYtSKngTWtCePXuCo1qaN28e3N63b1++//57pk6dyq5du4LFEQ3DYNeuXXi93pCeqYIPAXfu3Fni6xWVaJ999tk0bNgw+O/27dvz4YcfBv9dsDhQadf/448/OP/880N6Y26++WaAkCrEl19+OV27dmXw4MEkJSXRu3dvrr/+eiIiIkKuuWvXLmw2W/BmFwI3prGxsezcuTPYpubf9ANERUWVWmFYiPok/3uSnZ1d4nGRkZGMHDmSpUuXsnXr1mD7k5/c5ivYXu3cuZPRo0cH/52UlFRoePqphg0bxq233gqAxWKhYcOGhRLEutzu7Ny5kzZt2gCwYsUKhg0bFjKCMTw8nAsuuAAAu91e6PWLExYWVihp9ng8hIeHl2m/EOUliXY9kD8885JLLgluMwyDr776ioyMDGJiYoqcf6iUIjc3l5iYGAA6dOjA7NmzUUqhaVrIsV999RVLly7l2WefLfRkE0DXdRITE4HA0G5d13n44Ydp1qwZ/fv3B6Bz587Mnj0bj8dT6H8YSim2bdtG9+7dTzsWIUT1K60dSktLY9asWWRmZrJq1Squu+46IDAsMjIykiVLlhS6ZqNGjYI9IAVvTKdPn868efMYOnQo1157LU899VRwSGX+g8OCDxcL/r201yvKqdV4/X5/yE1hwfastOvnz3csTUREBO+99x7r169n7dq1rFq1ig8//JCPPvqIqKioIl/71BgL9lad2lYW9/BViPqoZcuWxMXFsWXLFjp27Fho/4MPPsg111xDt27duP7664mNjaVv375cc8017Nq1q1A18FMT6VO/b8VNocsXExMTvKcqTl1ud3JycoIPCvbt28d5550XPMZut7N//37atWsHwLfffkunTp3KFH+TJk04duxYyLbjx48H2/YmTZoU6vApuF+I8pI52me4PXv2sHXrVsaNG8eSJUuCf9544w28Xi8rVqwgOTmZPXv2BIdl59u+fTsulyv41PCqq67CbrezdOnSkOMMw+Dtt98mKyurzIltWloaV1xxBZMm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\n",
      "text/plain": [
       "<Figure size 1080x288 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "get_performances_plots(performances_df, \n",
    "                       performance_metrics_list=['AUC ROC', 'Average precision', 'Card Precision@100'], \n",
    "                       expe_type_list=['Test','Validation'],expe_type_color_list=['#008000','#FF0000'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The results are the same as those obtained in Section [Prequential Validation](Prequential_Validation)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "celltoolbar": "Tags",
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
